[ https://issues.apache.org/jira/browse/KAFKA-12879?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17503865#comment-17503865 ]
Chris Egerton edited comment on KAFKA-12879 at 3/9/22, 9:50 PM: ---------------------------------------------------------------- Are there any practical use cases for listing the offsets of a just-created topic? Are any of these use cases more likely than ones that would involve describing a just-created topic? It seems a little heavy-handed to suggest to users that they invoke {{Admin::describeTopics}} before {{Admin::listOffsets}} in order to handle non-existing topics, at least if this pattern hasn't already been documented as a best practice for people using the Java admin client. was (Author: chrisegerton): Are there any practical use cases for listing the offsets of a just-created topic? Are any of these use cases more likely than ones that would involve describing a just-created topic? > Compatibility break in Admin.listOffsets() > ------------------------------------------ > > Key: KAFKA-12879 > URL: https://issues.apache.org/jira/browse/KAFKA-12879 > Project: Kafka > Issue Type: Bug > Components: admin > Affects Versions: 2.8.0, 2.7.1, 2.6.2 > Reporter: Tom Bentley > Assignee: Philip Nee > Priority: Major > > KAFKA-12339 incompatibly changed the semantics of Admin.listOffsets(). > Previously it would fail with {{UnknownTopicOrPartitionException}} when a > topic didn't exist. Now it will (eventually) fail with {{TimeoutException}}. > It seems this was more or less intentional, even though it would break code > which was expecting and handling the {{UnknownTopicOrPartitionException}}. A > workaround is to use {{retries=1}} and inspect the cause of the > {{TimeoutException}}, but this isn't really suitable for cases where the same > Admin client instance is being used for other calls where retries is > desirable. > Furthermore as well as the intended effect on {{listOffsets()}} it seems that > the change could actually affect other methods of Admin. > More generally, the Admin client API is vague about which exceptions can > propagate from which methods. This means that it's not possible to say, in > cases like this, whether the calling code _should_ have been relying on the > {{UnknownTopicOrPartitionException}} or not. -- This message was sent by Atlassian Jira (v8.20.1#820001)