apache / apache/arrow-java

[Java] FieldVector getFieldBuffers API should not set reader/writer indices

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

説明

Per discussion .

The fact that we have reader/writer settings in `getFieldBuffers` is wrong. To clarify, `getFieldBuffers` is distinct from `getBuffers`. The former should be for getting access to underlying data for higher-performance algorithms. The latter is for sending the data over the wire. Seems we've mixed up use of both.

 

Currently in `VectorUnloader`, we used `getFieldBuffers` to create `ArrowRecordBatch` that’s why we keep writer/reader indices in `getFieldBuffers`, we should use `getBuffers` instead.

**Reporter**: [Ji Liu](https://issues.apache.org/jira/browse/ARROW-7539) / @tianchen92
#### PRs and other links:
- [GitHub Pull Request apache/arrow#6156](https://github.com/apache/arrow/pull/6156)

**Note**: *This issue was originally created as [ARROW-7539](https://issues.apache.org/jira/browse/ARROW-7539). Please see the [migration documentation](https://github.com/apache/arrow/issues/14542) for further details.*

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

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

調査の方向性

VectorUnloaderから始め、ArrowRecordBatchインスタンスの作成時におけるgetFieldBuffersとgetBuffersの使用方法を比較します。issueにリンクされているFieldVector APIの議論を読み、そのうえで、getFieldBuffersが読み取り/書き込みインデックスを変更せずに基盤となるデータを提供する一方、レコードバッチのシリアライズではgetBuffersが使用されることを確認します。

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

評価

技術スタック
java
領域
data
issue の種類
リファクタリング
難易度
3/5
見積もり時間
1〜2日
活発さ
停滞
明瞭さ
明確に書かれている
初心者へのやさしさ
25/100

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

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