rajinisivaram commented on a change in pull request #8986:
URL: https://github.com/apache/kafka/pull/8986#discussion_r454381244



##########
File path: 
clients/src/main/java/org/apache/kafka/clients/consumer/internals/AbstractCoordinator.java
##########
@@ -460,15 +463,21 @@ boolean joinGroupIfNeeded(final Timer timer) {
                     exception instanceof IllegalGenerationException ||
                     exception instanceof MemberIdRequiredException)
                     continue;
-                else if (!future.isRetriable())
-                    throw exception;
-
-                timer.sleep(rebalanceConfig.retryBackoffMs);
+                else {
+                    handleFailure(future, timer);
+                }
             }
         }
         return true;
     }
 
+    protected void handleFailure(RequestFuture<?> future, Timer timer) {
+        if (future.isRetriable() || future.exception() instanceof 
AuthorizationException)

Review comment:
       @abbccdda Thinking about this a bit more, it seems safer to restrict 
backoff to GroupAuthorizationException as you had mentioned earlier in this 
thread. Consumers requests with topics may contain multiple topics of which 
only a subset are unauthorized. We probably don't want to apply backoff in that 
case. Since the issue we have seen is only with group authorization, I have 
updated the PR to only apply backoff for GroupAuthorizationException (in 
addition to retriable exceptions which we were handling earlier). 




----------------------------------------------------------------
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:
us...@infra.apache.org


Reply via email to