apache / apache/arrow-java

[Java] Exception when trying to load next batch while reading a parquet file

オープン
#80 コメント 8 件 リアクション 0 件 担当者 0 名 GitHub で見る
主要言語
Java
スター
94
フォーク
152
平均マージ
3日 16時間
マージ済み PR(30日)
11

説明

### Describe the bug, including details regarding any error messages, version, and platform.

Getting this exception when trying to load next batch while reading a parquet file.
The parsing works if the batch size is big enough to process all the parquet contents in one shot. But if I try to give a smaller batch size , the code breaks giving the below exception

java.lang.IllegalArgumentException: should have as many children as in the schema: found 0 expected 8
at org.apache.arrow.util.Preconditions.checkArgument(Preconditions.java:282)
at org.apache.arrow.vector.VectorLoader.loadBuffers(VectorLoader.java:127)
at org.apache.arrow.vector.VectorLoader.load(VectorLoader.java:84)
at org.apache.arrow.c.Data.importIntoVectorSchemaRoot(Data.java:334)
at org.apache.arrow.dataset.jni.NativeScanner$NativeReader.loadNextBatch(NativeScanner.java:151)

### Component(s)

Java

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

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

調査の方向性

まず、完全な内容より小さいバッチで parquet ファイルを読み込む際の失敗を再現します。NativeScanner.java の loadNextBatch を読み、次に Data.importIntoVectorSchemaRoot と VectorLoader.loadBuffers を経由する呼び出しを追跡します。後続のバッチが schema-child-count exception なしで読み込まれれば完了ですが、issue にはテストファイルも再現ファイルもありません。

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

評価

技術スタック
java
領域
data
issue の種類
バグ
難易度
4/5
見積もり時間
3〜5日
活発さ
停滞
明瞭さ
説明が足りない
初心者へのやさしさ
25/100

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

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