web-dev-qa-db-fra.com

La récupération des données avec le connecteur de flocon de neige génère une erreur EmptyPyArrowIterator

J'utilise python connecteur flocon de neige dans mon python (application de tableau de bord compliqué) et aujourd'hui, l'application a cessé de fonctionner sans que je change le code. J'ai essayé deux ou trois choses) pour savoir quel pourrait être le problème et j'ai même essayé d'exécuter l'exemple de code à partir de documentation Snowflake et j'ai eu la même erreur:

code:

cur = conn.cursor()
try:
    cur.execute("SELECT col1, col2 FROM test_table ORDER BY col1")
    for (col1, col2) in cur:
        print('{0}, {1}'.format(col1, col2))
finally:
    cur.close()

erreur:

Traceback (most recent call last):
  File "db_connection.py", line 48, in <module>
    cur.execute("SELECT col1, col2 FROM test_table ORDER BY col1")
  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/snowflake/connector/cursor.py", line 580, in execute
    self._init_result_and_meta(data, _use_ijson)
  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/snowflake/connector/cursor.py", line 630, in _init_result_and_meta
    self._result = ArrowResult(data, self, use_dict_result=self._use_dict_result)
  File "arrow_result.pyx", line 42, in snowflake.connector.arrow_result.ArrowResult.__init__
  File "arrow_result.pyx", line 156, in snowflake.connector.arrow_result.ArrowResult._reset
NameError: name 'EmptyPyArrowIterator' is not defined

La connexion est établie, je suis capable de créer une table dans ma base de données mais je n'arrive pas à interroger et itérer les données.

Je suis sur macOS Catalina 10.15.1, snowflake-connector-python==2.1.0, Python 3.7.0.

5
verope

Je crois que vous pourriez avoir utilisé l'installation de flocon de neige par pip - pour installer le connecteur de flocon de neige

essayez avec, pip installez snowflake-connector-python

0
Sriga

Je l'ai rencontré il y a quelques heures au milieu d'un long travail par lots. Fait intéressant, le même travail a bien fonctionné, jusqu'à ce que tout à coup, il commence à lever l'exception "EmptyPyArrowIterator" et ne redémarre pas. Rétrogradation snowflake-connector-python à 2.0.4 semble avoir résolu le problème pour l'instant.

0
Ville Brofeldt

Pour plus de détails sur les autres effets, reportez-vous au document de version ci-dessous.

https://docs.snowflake.net/manuals/release-notes/2019-12-12.html#python-connector-2-1-0-jdbc-driver-3-11-0-support-for- format de flèche interne

Pour corriger j'ai installé pyarrow au niveau utilisateur

pip3 install pyarrow --user
0
Sharvan Kumar