rajinisivaram commented on a change in pull request #8986: URL: https://github.com/apache/kafka/pull/8986#discussion_r454331091
########## 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: `AuthorizationException` is not retriable and I kept that it that way, so this PR won't affect other components. Since AuthorizationException is not retriable, we want to sleep first before throwing the exception, hence the ordering of sleep before throw. ---------------------------------------------------------------- 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