SEPURI-SAI-KRISHNA commented on PR #23212: URL: https://github.com/apache/kafka/pull/23212#issuecomment-5856473881
Open since 20 August, no review yet. Small: +35/-1 across two files, no public API change, no KIP. `RetryWithToleranceOperator.backoff()` computes `RETRIES_DELAY_MIN_MS << numRetry` with no overflow check. With `errors.retry.timeout = -1` (documented as infinite retries) the attempt count is unbounded, so the shift overflows: at numRetry 55 the delay goes negative, which skips the jitter cap, and `CountDownLatch.await()` returns immediately for a non-positive timeout. The backoff vanishes and the connector spins against the system that is already failing. Past 63 the shift distance wraps and the ramp restarts at 300 ms. With the default 60 s max delay that is about 25 minutes of sustained failure away. The added test drives 130 attempts and asserts every delay stays in `[0, errors.retry.delay.max.ms]`; on trunk it fails with `Backoff delay -7638104968020361216 is outside the expected range [0, 60000]`. @chia7712 @mimaison could one of you take a look? The only checks showing are the labeler bots, so it also needs a committer to approve a CI run. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
