Old Parquet files with wrong Compressed Size not Readable
- 主要言語
- Java
- スター
- 3.1k
- フォーク
- 1.6k
- 平均マージ
- 3日 12時間
- マージ済み PR(30日)
- 33
説明
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.
コントリビューションガイド
このリポジトリのコントリビューションガイドは索引されていません
調査の方向性
compressed_size に dictionary page が含まれていない古い Parquet ファイルを処理する CLI のコードパスから始め、続いて追加バイトに使用されるバイトバッファを調べます。issue で説明されている欠陥のある Parquet ファイルと unit test を使用します。テストがパスし、バッファを flip した後に古いファイルを読み取れる状態になれば完了です。
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- java
- 領域
- data-engineering
- issue の種類
- バグ
- 難易度
- 2/5
- 見積もり時間
- 1〜3時間
- 活発さ
- 停滞
- 明瞭さ
- おおむね明確
- 初心者へのやさしさ
- 55/100