nodece commented on code in PR #24118: URL: https://github.com/apache/pulsar/pull/24118#discussion_r2011880915
########## pulsar-broker/src/main/java/org/apache/pulsar/broker/namespace/NamespaceService.java: ########## @@ -1412,17 +1412,20 @@ public CompletableFuture<List<String>> getOwnedTopicListForNamespaceBundle(Names * Check topic exists( partitioned or non-partitioned ). */ public CompletableFuture<TopicExistsInfo> checkTopicExists(TopicName topic) { - return pulsar.getBrokerService() - .fetchPartitionedTopicMetadataAsync(TopicName.get(topic.toString())) - .thenCompose(metadata -> { - if (metadata.partitions > 0) { - return CompletableFuture.completedFuture( - TopicExistsInfo.newPartitionedTopicExists(metadata.partitions)); - } - return checkNonPartitionedTopicExists(topic) - .thenApply(b -> b ? TopicExistsInfo.newNonPartitionedTopicExists() - : TopicExistsInfo.newTopicNotExists()); - }); + // For non-persistent/persistent partitioned topic, which has metadata. + return pulsar.getBrokerService().fetchPartitionedTopicMetadataAsync( + topic.isPartitioned() ? TopicName.get(topic.getPartitionedTopicName()) : topic) + .thenCompose(metadata -> { + if (metadata.partitions > 0) { + return CompletableFuture.completedFuture( + topic.isPartitioned() ? TopicExistsInfo.newNonPartitionedTopicExists() : Review Comment: Good catch, `topic.getPartitionIndex() < metadata.partitions` should be added to here. -- 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: commits-unsubscr...@pulsar.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org