[
https://issues.apache.org/jira/browse/KAFKA-10033?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Manikumar resolved KAFKA-10033.
-------------------------------
Fix Version/s: 2.7.0
Resolution: Fixed
> AdminClient should throw UnknownTopicOrPartitionException instead of
> UnknownServerException if altering configs of non-existing topic
> -------------------------------------------------------------------------------------------------------------------------------------
>
> Key: KAFKA-10033
> URL: https://issues.apache.org/jira/browse/KAFKA-10033
> Project: Kafka
> Issue Type: Improvement
> Components: admin
> Affects Versions: 2.4.0
> Reporter: Gregory Koshelev
> Assignee: Brian Byrne
> Priority: Major
> Labels: pull-request-available
> Fix For: 2.7.0
>
>
> Currently, altering configs of non-existing topic leads to
> {{UnknownServerException}}:
> {code}
> java.util.concurrent.ExecutionException:
> org.apache.kafka.common.errors.UnknownServerException: Topic "kgn_test" does
> not exist.
> at
> org.apache.kafka.common.internals.KafkaFutureImpl.wrapAndThrow(KafkaFutureImpl.java:45)
> at
> org.apache.kafka.common.internals.KafkaFutureImpl.access$000(KafkaFutureImpl.java:32)
> at
> org.apache.kafka.common.internals.KafkaFutureImpl$SingleWaiter.await(KafkaFutureImpl.java:89)
> at
> org.apache.kafka.common.internals.KafkaFutureImpl.get(KafkaFutureImpl.java:260)
> at
> ru.kontur.vostok.hercules.stream.manager.kafka.KafkaManager.changeTtl(KafkaManager.java:130)
> ... 10 common frames omitted
> Caused by: org.apache.kafka.common.errors.UnknownServerException: Topic
> "kgn_test" does not exist.
> {code}
> The output above is produced due to {{AdminZkClient.validateTopicConfig}}
> method:
> {code}
> def validateTopicConfig(topic: String, configs: Properties): Unit = {
> Topic.validate(topic)
> if (!zkClient.topicExists(topic))
> throw new AdminOperationException("Topic \"%s\" does not
> exist.".format(topic))
> // remove the topic overrides
> LogConfig.validate(configs)
> }
> {code}
> {{UnknownServerException}} is common exception but in this case cause is
> pretty clear. So this can be fixed easily by using
> {{UnknownTopicOrPartitionException}}.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)