Old Parquet files with wrong Compressed Size not Readable
- Vorherrschende Sprache
- Java
- Sterne
- 3.1k
- Forks
- 1.6k
- Ø Merge
- 3 T. 12 Std.
- Gemergte PRs (30 T.)
- 33
Beschreibung
In certain circumstances, the CLI will fail to read old (perhaps ancient) parquet files that have an incorrect compressed_size field set in the column metadata that does not include the dictionary page (at least according to the comment in the code). The code that is supposed to handle this does not flip the byte buffer it reads the extra bytes into. It appears to have been broken for a few years now.
I have written a PR that includes a defective parquet file with this issue, wrote a unit test that fails without the additional `flip`, and validated that the code works afterwards.
This is a trivial minor issue that was from learning the code rather than actually addressing a production issue, so there's no urgency.
Beitragsleitfaden
Für dieses Repository ist kein Beitragsleitfaden indexiert
Rechercherichtung
Beginne mit dem CLI-Codepfad, der alte Parquet-Dateien verarbeitet, bei denen compressed_size die Dictionary Page nicht einschließt, und untersuche anschließend den für die zusätzlichen Bytes verwendeten Byte-Puffer. Verwende die in diesem Issue beschriebene fehlerhafte Parquet-Datei und den Unit-Test; die Aufgabe ist erledigt, wenn der Test erfolgreich ist und die alte Datei nach dem Flippen des Puffers lesbar ist.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- java
- Bereich
- data-engineering
- Issue-Typ
- Bug
- Schwierigkeit
- 2/5
- Geschätzter Aufwand
- 1-3 Stunden
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 55/100