web-dev-qa-db-ja.com

スノーフレークコネクタを使用してデータをフェッチすると、EmptyPyArrowIteratorエラーがスローされる

python Snowflake connector in my python script(plotly dash app))を使用していますが、今日、コードを変更せずにアプリが機能しなくなりました。いくつか試してみました問題が何であるかを見つけるために、私は Snowflakeドキュメント からサンプルコードを実行しようとしましたが、同じエラーが発生しました。

コード:

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()

エラー:

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

接続が確立されました。データベースにテーブルを作成することはできますが、データのクエリと反復を行うことができません。

macOS Catalina 10.15.1snowflake-connector-python==2.1.0Python 3.7.0を利用しています。

5
verope

スノーフレークコネクタのインストールに、pip install snowflakeを使用した可能性があります

試して、pip install snowflake-connector-python

0
Sriga

数時間前に長いバッチジョブの最中にこれに遭遇しました。興味深いことに、同じジョブがうまくいきました。突然、 "EmptyPyArrowIterator"例外がスローされ、再起動しなくなりました。ダウングレードsnowflake-connector-pythonから2.0.4は今のところ問題を修正しているようです。

0
Ville Brofeldt

その他の影響について詳しくは、以下のリリースドキュメントをご覧ください。

https://docs.snowflake.net/manuals/release-notes/2019-12.html#python-connector-2-1-0-jdbc-driver-3-11-0-support-for- internal-arrow-format

修正するには、ユーザーレベルでpyarrowをインストールします

pip3 install pyarrow --user
0
Sharvan Kumar