apache / apache/parquet-java

ConsecutiveChunkList's length field should be long instead of int

オープン
#2,615 コメント 1 件 リアクション 0 件 担当者 0 名 GitHub で見る
Component: Parquet Priority: Major Type: bug
主要言語
Java
スター
3.1k
フォーク
1.6k
平均マージ
3日 12時間
マージ済み PR(30日)
33

説明

Hi, we encountered some read failure for large column chunk(size > Int.MaxValue). After some debugging, the buggy code is that ConsecutiveChunkList's length field is int, and it overflows when the uncompressed size of one ColumnChunk is large than Int.MaxValue.

 

Below is the exception stack:

![image-2021-05-10-17-12-00-083.png](https://issues.apache.org/jira/secure/attachment/13025233/image-2021-05-10-17-12-00-083.png)

 

The column size is some what:

![image-2021-05-10-17-14-45-401.png](https://issues.apache.org/jira/secure/attachment/13025232/image-2021-05-10-17-14-45-401.png)

**Reporter**: [YE](https://issues.apache.org/jira/secure/ViewProfile.jspa?name=advancedxy) / @advancedxy
**Assignee**: [YE](https://issues.apache.org/jira/secure/ViewProfile.jspa?name=advancedxy) / @advancedxy
#### Original Issue Attachments:
- [image-2021-05-10-17-12-00-083.png](https://issues.apache.org/jira/secure/attachment/13025233/image-2021-05-10-17-12-00-083.png)
- [image-2021-05-10-17-14-45-401.png](https://issues.apache.org/jira/secure/attachment/13025232/image-2021-05-10-17-14-45-401.png)

**Note**: *This issue was originally created as [PARQUET-2045](https://issues.apache.org/jira/browse/PARQUET-2045). Please see the [migration documentation](https://issues.apache.org/jira/browse/PARQUET-2502) for further details.*

コントリビューションガイド

このリポジトリのコントリビューションガイドは索引されていません

調査の方向性

ConsecutiveChunkList を見つけ、大きなカラムチャンクの読み取り時にその length フィールドがどのように使用されているかを追跡します。非圧縮サイズが Int.MaxValue を超える場合に報告された失敗を再現し、その後、length がオーバーフローせずに処理され、読み取りが成功することを確認します。

索引モデルが issue の本文から書いたものです。

評価

技術スタック
java
領域
data-engineering
issue の種類
バグ
難易度
3/5
見積もり時間
1〜2日
活発さ
停滞
明瞭さ
おおむね明確
初心者へのやさしさ
30/100

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。