Aiven-Open / Aiven-Open/opensearch-connector-for-apache-kafka

Retry on conflict should have its own config

オープン
#439 コメント 1 件 リアクション 0 件 担当者 0 名 GitHub で見る
主要言語
Java
スター
95
フォーク
61
平均マージ
11時間 52分
マージ済み PR(30日)
7

説明

Hi, currently retry on conflict value is coupled to max.inflight.request, meaning that if we set max.inflight.request to 1, then the retry on conflict value will be 1. And it is capped at 3. Is there any reasoning why retry on conflict doesn't have their own config instead of coupling it with the inflight request and capped it to 3 ?

```
if (config.indexWriteMethod() == IndexWriteMethod.UPSERT) {
bulkOperation = BulkOperation.of(b -> b.update(u -> u.id(documentId)
.index(indexName)
.routing(routing)
.document(binaryData)
.upsert(binaryData)
.docAsUpsert(true)
.retryOnConflict(Math.min(config.maxInFlightRequests(), 3))));
```

I can help to make a PR if this is not intended.

Thank you

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

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

調査の方向性

Start at the UPSERT branch shown in the issue, then trace how max.inflight.request is defined and passed through the connector configuration. Done means retryOnConflict is controlled by its own configuration rather than Math.min(config.maxInFlightRequests(), 3), with the resulting behavior covered by the relevant project tests.

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

評価

技術スタック
java, kafka
領域
backend, distributed-systems, search
issue の種類
機能追加
難易度
3/5
見積もり時間
1〜2日
活発さ
静か
明瞭さ
おおむね明確
初心者へのやさしさ
62/100

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

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