librdkafka
librdkafka copied to clipboard
Combine message timeout drain bumps
Amend idempotent producer message timeout handling from #2163 in relation to CPU usage issue #3692
Issue an idempotent producer drain-bump only once per entire scanning cycle rather than for each toppar
Passes test number 94 (idempotence msg timeout) extended to spot absence of detected timeouts
I think I understand the problem in principle, although at a glance I am unsure how any sending could occur during the scanning process that takes place in a toppar lock. If at all possible, making broker wake-ups lighter weight sounds like a better way of reducing the overhead of repeated drain-bump.
I am happy to close this PR