dimitarndimitrov opened a new pull request, #13432: URL: https://github.com/apache/kafka/pull/13432
Aside from consistency with the implementation of newer APIs this also provides more resilient retries (e.g. in case of TimeoutExceptions) and simplifies the code to some extent. One notable detail is the addition of unsupported version handling in the failure callback in the `AdminApiDriver` and as a new callback in the `AdminApiHandler`. The handler callback is invoked in case an `UnsupportedVersionException` is caught by the driver and returns a flag indicating whether the exception could be handled (like the similar callback in `Call`). - It also seemed prudent to signal whether the exception was caught in the fulfillment or the lookup stage (the latter case could then be delegated to the lookup strategy), but I don't know if there are actual use-cases for that. The change has been tested manually and with a new `KafkaAdminClientTest`. The retry aspect also unexpectedly stalled a Connect `AdminClientUnitTestEnv` test due to retrying after a timeout where the test expected an immediate failure. Also a JMH benchmark for the deleted equivalent of the fulfillment stage of the API has been deleted and not replaced as I wasn't too sure whether I can recreate it after the `AdminApiDriver` refactoring. ### Committer Checklist (excluded from commit message) - [ ] Verify design and implementation - [ ] Verify test coverage and CI build status - [ ] Verify documentation (including upgrade notes) -- 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: jira-unsubscr...@kafka.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org