kamalcph commented on code in PR #19899:
URL: https://github.com/apache/kafka/pull/19899#discussion_r2177772159


##########
storage/src/main/java/org/apache/kafka/server/log/remote/metadata/storage/TopicBasedRemoteLogMetadataManager.java:
##########
@@ -477,13 +478,15 @@ boolean doesTopicExist(Admin adminClient, String topic) {
             if (description != null) {
                 log.info("Topic {} exists. TopicId: {}, numPartitions: {}, ", 
topic,
                         description.topicId(), 
description.partitions().size());
-            } else {

Review Comment:
   The `else` block is dead-code. Thanks for removing it!



##########
storage/src/main/java/org/apache/kafka/server/log/remote/metadata/storage/TopicBasedRemoteLogMetadataManager.java:
##########
@@ -477,13 +478,15 @@ boolean doesTopicExist(Admin adminClient, String topic) {
             if (description != null) {
                 log.info("Topic {} exists. TopicId: {}, numPartitions: {}, ", 
topic,
                         description.topicId(), 
description.partitions().size());
-            } else {
-                log.info("Topic {} does not exist.", topic);
             }
-            return description != null;
+            return true;
         } catch (ExecutionException | InterruptedException ex) {
-            log.info("Topic {} does not exist. Error: {}", topic, 
ex.getCause().getMessage());
-            return false;
+            if (ex.getCause() instanceof UnknownTopicOrPartitionException) {
+                log.info("Topic {} does not exist", topic);

Review Comment:
   With this change, the CREATE_TOPIC request issued only when it is clear that 
the topic does not exist in the cluster.
   
   When the request to describe the topic gets timed-out or any other exception 
thrown, then the same gets rethrown and the describe/create topic request gets 
retried in the next iteration until the initializationRetryMaxTimeoutMs gets 
breached. 



-- 
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

Reply via email to