`BatchPoints.Builder` not reusable
まだ誰も着手していません。
評価
調査の方向性
src/main/java/org/influxdb/dto/BatchPoints.java から始め、特に BatchPoints.Builder.build() と、156-174 行付近で参照されている points コレクションを確認してください。レポートにある 2 回の build の例で問題を再現してください。別々に build された BatchPoints インスタンスが、変更可能な point の状態を共有しなくなれば完了です。
索引モデルが issue の本文から書いたものです。
説明
There's nothing in BatchPoints.Builder javadoc that would warn against calling build() multiple times:
https://github.com/influxdata/influxdb-java/blob/b1d1d8a2ed4430f6b6ac271362acab7b493be984/src/main/java/org/influxdb/dto/BatchPoints.java#L54-L57
https://github.com/influxdata/influxdb-java/blob/b1d1d8a2ed4430f6b6ac271362acab7b493be984/src/main/java/org/influxdb/dto/BatchPoints.java#L151-L156
and nothing in build() method itself that would cause ie exception:
https://github.com/influxdata/influxdb-java/blob/b1d1d8a2ed4430f6b6ac271362acab7b493be984/src/main/java/org/influxdb/dto/BatchPoints.java#L156-L174
but creating multiple BatchPoints instances from BatchPoints.Builder is not actually safe since BatchPoints.Builder does not make defensive copy of this.points:
https://github.com/influxdata/influxdb-java/blob/b1d1d8a2ed4430f6b6ac271362acab7b493be984/src/main/java/org/influxdb/dto/BatchPoints.java#L162
so ie this code will fail:
BatchPoints bp1 = builder.build();
int size = bp1.getPoints().size();
bp1.point(point);
BatchPoints bp2 = builder.build();
assertEquals(size, bp2.getPoints().size());
since bp1.point(point) modified collection builder refers to.
- 主要言語
- Java
- スター
- 1.2k
- フォーク
- 469
- PR マージ指標
- 30日以内にマージされた PR はありません
コントリビューションガイド
このリポジトリのコントリビューションガイドは索引されていません
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
influxdata/influxdb-java のほかの issue
-
難易度 4/5 3〜5日 初心者へのやさしさ 38/100
influxdata/influxdb-java#1012 ·
-
難易度 5/5 1週間以上 初心者へのやさしさ 30/100
influxdata/influxdb-java#1006 · コメント 1 件 · リアクション 1 件 ·
-
難易度 4/5 3〜5日 初心者へのやさしさ 25/100
influxdata/influxdb-java#1005 · コメント 3 件 ·
-
難易度 3/5 1〜2日 初心者へのやさしさ 35/100
influxdata/influxdb-java#999 ·
-
難易度 4/5 3〜5日 初心者へのやさしさ 35/100
influxdata/influxdb-java#970 ·
influxdata/influxdb-java の issue をすべて見る
似ている issue
-
area/plugin
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
kestra-io/plugin-kestra#190 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 70/100
google-ai-edge/LiteRT-LM#3739 ·
-
bug
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
-
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
integra-team-red/meet-map#249 ·
-
[Studio][Bug] Cancelled create-user dialog keeps the password and admin switch for the next attempt オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
apache/rocketmq-dashboard#5064 ·