How to handle snappy files generated by Trino?
まだ誰も着手していません。
評価
調査の方向性
提供された再現手順と snappy/snappy_formats.py の traceback から始め、特に get_decompress_function と guess_format_by_header を確認してください。Trino が生成したファイルを使用して、バージョン 0.7.0 と 0.7.1 の動作を比較してください。ファイル形式が検出され、以前の出力を後退させることなく正常に展開できれば完了です。
索引モデルが issue の本文から書いたものです。
説明
Hello,
With the new release to 0.7.1 the I can't decompress CSV files generated by Trino, I think the issue is related with the Hadoop_snappy. Does anyone know how it can fixed?
from snappy import snappy_formats
csv_file = 'csv_67dba65a.snappy'
def read_file(file_path):
return open(file_path, 'rb')
decompress_func, read_chunk = snappy_formats.get_decompress_function(
'auto',
read_file(csv_file)
)
decompressed_stream = io.BytesIO()
# Decompress the data
decompress_func(
read_file(csv_file),
decompressed_stream,
start_chunk=read_chunk
)
decompressed_stream.seek(0)
print(f"Compressed file: {read_file(csv_file).read()}")
print(f"DeCompressed file: {decompressed_stream.read()}")
This code has different outputs based on the version:
-
0.7.0
Compressed file: b'\x00\x00\x00\x04\x00\x00\x00\x06\x04\x0c"a"\n'
DeCompressed file: b'"a"\n"a"\n' -
0.7.1
.venv/lib/python3.12/site-packages/snappy/snappy_formats.py", line 64, in get_decompress_function
decompress_func, read_chunk = guess_format_by_header(fin)
.venv/lib/python3.12/site-packages/snappy/snappy_formats.py", line 59, in guess_format_by_header
raise UncompressError("Can't detect archive format")
snappy.snappy.UncompressError: Can't detect archive format
- 主要言語
- Python
- スター
- 490
- フォーク
- 104
- PR マージ指標
- 30日以内にマージされた PR はありません
コントリビューションガイド
このリポジトリのコントリビューションガイドは索引されていません
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
intake/python-snappy のほかの issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
intake/python-snappy#152 · コメント 3 件 ·
-
難易度 5/5 1週間以上 初心者へのやさしさ 35/100
intake/python-snappy#151 · コメント 1 件 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 45/100
intake/python-snappy#150 · コメント 2 件 ·
-
難易度 4/5 3〜5日 初心者へのやさしさ 25/100
intake/python-snappy#147 · コメント 3 件 ·
-
難易度 3/5 1〜2日 初心者へのやさしさ 25/100
intake/python-snappy#138 · コメント 2 件 ·
intake/python-snappy の issue をすべて見る
似ている issue
-
documentation help wanted
難易度 2/5 1〜3時間 初心者へのやさしさ 90/100
-
難易度 2/5 1〜3時間 初心者へのやさしさ 90/100
simonw/sqlite-utils#872 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 88/100
-
難易度 2/5 1〜3時間 初心者へのやさしさ 82/100
-
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100