How to handle snappy files generated by Trino?
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 25/100
Direzione di ricerca
Inizia con la riproduzione fornita e il traceback in snappy/snappy_formats.py, in particolare get_decompress_function e guess_format_by_header. Confronta il comportamento tra le versioni 0.7.0 e 0.7.1 usando il file generato da Trino. Il lavoro è completato quando il formato del file viene rilevato e decompresso correttamente senza regredire rispetto all'output precedente.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
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
- Lingua principale
- Python
- Stelle
- 490
- Fork
- 104
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Guida per i contributori
Nessuna guida per i contributori indicizzata per questo repository
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di intake/python-snappy
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
intake/python-snappy#152 · 3 commenti ·
-
Difficoltà 5/5 Più di una settimana Idoneità per principianti 35/100
intake/python-snappy#151 · 1 commento ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 45/100
intake/python-snappy#150 · 2 commenti ·
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 25/100
intake/python-snappy#147 · 3 commenti ·
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 25/100
intake/python-snappy#138 · 2 commenti ·
Tutte le issue di intake/python-snappy
Issue simili
-
documentation help wanted
Difficoltà 2/5 1-3 ore Idoneità per principianti 90/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 90/100
simonw/sqlite-utils#872 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 88/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100