lucasbru opened a new pull request, #22529: URL: https://github.com/apache/kafka/pull/22529
Follow-up to KAFKA-20673 (#22493). That change lets the AdminClient recover a partition-leader request whose cached leader has left the cluster by sending the keys back to the lookup stage from the admin client thread. The re-lookup is enqueued through the runnable, which rejects new calls once close() has been initiated, failing them with "Cannot accept new calls when AdminClient is closing". As a result, a request that took this recovery path during the close(timeout) grace period would fail immediately instead of being retried until the deadline, even though the user asked for a grace period. This change skips the recovery while the client is shutting down. handleNodeUnavailable returns false once a hard shutdown time has been set, so the call is left in pendingCalls and follows the normal close(timeout) handling: it can still be retried, or assigned if the broker reappears, within the shutdown grace period rather than being killed instantly. The behaviour outside of shutdown is unchanged. -- 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]
