fcrimins commented on issue #1093:
URL: 
https://github.com/apache/iceberg-python/issues/1093#issuecomment-2369589615

   I must have missed the "Falling back to pure Python Avro decoder, missing 
Cython implementation" warning during installation, but I was indeed missing 
Cython, which was causing a different `decoder_fast` related error during `make 
test`:
   
   ```bash
   ~/iceberg-python$ make test
   poetry run pytest tests/ -m "(unmarked or parametrize) and not integration"
   =========================================================== test session 
starts ============================================================
   platform linux -- Python 3.10.12, pytest-7.4.4, pluggy-1.5.0
   rootdir: /mnt/c/Users/.../iceberg-python
   configfile: pyproject.toml
   plugins: mock-3.14.0, checkdocs-2.10.1, requests-mock-1.12.1, 
lazy-fixture-0.6.3
   collected 3588 items / 2 errors / 865 deselected / 2723 selected
   
   ================================================================== ERRORS 
==================================================================
   _______________________________________________ ERROR collecting 
tests/avro/test_decoder.py ________________________________________________
   ImportError while importing test module 
'/mnt/c/Users/.../iceberg-python/tests/avro/test_decoder.py'.
   Hint: make sure your test modules/packages have valid Python names.
   Traceback:
   /usr/lib/python3.10/importlib/__init__.py:126: in import_module
       return _bootstrap._gcd_import(name[level:], package, level)
   tests/avro/test_decoder.py:29: in <module>
       from pyiceberg.avro.decoder_fast import CythonBinaryDecoder
   E   ModuleNotFoundError: No module named 'pyiceberg.avro.decoder_fast'
   ________________________________________________ ERROR collecting 
tests/avro/test_reader.py ________________________________________________
   ImportError while importing test module 
'/mnt/c/Users/.../iceberg-python/tests/avro/test_reader.py'.
   Hint: make sure your test modules/packages have valid Python names.
   Traceback:
   /usr/lib/python3.10/importlib/__init__.py:126: in import_module
       return _bootstrap._gcd_import(name[level:], package, level)
   tests/avro/test_reader.py:24: in <module>
       from pyiceberg.avro.decoder_fast import CythonBinaryDecoder
   E   ModuleNotFoundError: No module named 'pyiceberg.avro.decoder_fast'
   ========================================================= short test summary 
info ==========================================================
   ERROR tests/avro/test_decoder.py
   ERROR tests/avro/test_reader.py
   !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! Interrupted: 2 errors 
during collection !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
   ==================================================== 865 deselected, 2 
errors in 23.91s ====================================================
   make: *** [Makefile:42: test] Error 2
   ```
   
   I was able to fix the test errors by following the Cython installation 
instructions documented 
[here](https://cython.readthedocs.io/en/latest/src/quickstart/install.html) and 
then rebuilding.
   ```bash
   ~/iceberg-python$ sudo apt-get install build-essential python3-dev
   ~/iceberg-python$ pip install --user Cython
   ~/iceberg-python$ poetry build
   ```


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscr...@iceberg.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscr...@iceberg.apache.org
For additional commands, e-mail: issues-h...@iceberg.apache.org

Reply via email to