lianetm commented on code in PR #15613:
URL: https://github.com/apache/kafka/pull/15613#discussion_r1543492385
##########
clients/src/main/java/org/apache/kafka/clients/consumer/internals/ConsumerCoordinator.java:
##########
@@ -984,6 +984,8 @@ public void close(final Timer timer) {
}
} finally {
super.close(timer);
+ // Super-class close may wait for more commit callbacks to
complete.
+ invokeCompletedOffsetCommitCallbacks();
Review Comment:
Agree, there could be async requests, with known coord, not getting a
response within the above commit sync time, then getting it while the
super.close waits, so we should trigger the callbacks at this point.
But this makes me notice, aren't we breaking the `close(Duration)` contract
here, calling that `super.close(timer)` on the finally clause? Let's say async
requests that are not getting a response within the timeout in the above while
loop (so we block for time on the while), then `finally`, the super class
blocks for that time again
[here](https://github.com/apache/kafka/blob/8b274d8c1bfbfa6d4319ded884a11da790d7bf77/clients/src/main/java/org/apache/kafka/clients/consumer/internals/AbstractCoordinator.java#L1139).
Am I missing something? (I can file a separate Jira if I'm not missing
something here)
--
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]