d8tltanc commented on a change in pull request #8846:
URL: https://github.com/apache/kafka/pull/8846#discussion_r468736687
##########
File path:
clients/src/main/java/org/apache/kafka/clients/admin/KafkaAdminClient.java
##########
@@ -721,6 +730,11 @@ protected Node curNode() {
return curNode;
}
+ final void incrementRetryBackoff(Call failedCall, long now) {
Review comment:
For DescribeConsumerGroup and ListOffsets, AdminClient will construct a
chain of requests. For example, DescribeConsumerGroup will send a
FindCoordinatorRequest and then a DescribeGroupRequest (Denote them as F and
D).
Let's consider this case:
F (Error, tries = 0) -> F (OK, tries = 1) -> D (Error, tries = 1) -> F (OK,
tries = 2) -> D (OK, tries = 2)
F may come after either a failed F or failed D. It should increase the
attempts based on either the attempts of F or D.
D will come after a succeeded F. It should increase the attempts based on
the attempts of F.
Either F and D need to be aware of the number of attempts of the previously
failed request to set their own attempts properly. Since F and D are separate
objects and does not share any memory region, we can probably only to pass the
failed call instance for constructing their status properly.
----------------------------------------------------------------
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.
For queries about this service, please contact Infrastructure at:
[email protected]