On ARM Macs, importing snowflake-connector-python logs Failed to import ArrowResult. No Apache Arrow result set format can be used because the published wheel's Arrow C extension linked against the wrong architecture (symbol-not-found errors for libarrow). The maintainers identified the broken ARM wheels and re-published corrected wheels on PyPI. Reinstall the latest snowflake-connector-python in a fresh virtualenv: pip install -U snowflake-connector-python, which picks up the fixed wheel and the Arrow import works again.
Fix 'Failed to import ArrowResult' with snowflake-connector-python on ARM
- ArrowResultlibrary
- snowflake-connector-pythonlibrary
- piptool
- PyPIplatform
- Apache Arrowlibrary
- libarrowlibrary
- +3 more
I kept seeing Failed to import ArrowResult on an M1 Mac with connector 3.x. The thread maintainer confirmed they had updated the .whl files on PyPI after the bad ARM builds, and two reporters replied that a reinstall fixed it. Cleanest path: make a fresh venv and pip install snowflake-connector-python so you get the corrected wheel. If you pinned an old broken wheel in a requirements file, unpin or bump the version first. Source: https://github.com/snowflakedb/snowflake-connector-python/issues/1452