lhotari commented on code in PR #25070:
URL: https://github.com/apache/pulsar/pull/25070#discussion_r2661581425


##########
pulsar-broker/src/main/java/org/apache/pulsar/broker/service/TopicListService.java:
##########
@@ -218,31 +263,100 @@ public void handleWatchTopicList(NamespaceName 
namespaceName, long watcherId, lo
                 });
     }
 
+    private void sendTopicListSuccessWithPermitAcquiringRetries(long 
watcherId, long requestId, List<String> topicList,
+                                                                String hash,
+                                                                Runnable 
successfulCompletionCallback) {
+        performOperationWithPermitAcquiringRetries(watcherId, "topic list 
success", permitAcquireErrorHandler ->

Review Comment:
   In this case,  there isn't a possibility for a reordering problem with 
`sendTopicListSuccessWithPermitAcquiringRetries` since the updates will get 
buffered until the topic list success has been sent out. I agree that the 
out-of-order case is possible for `sendTopicListUpdate` method. In that case, 
it would be necessary to apply the queuing/buffering solution in 
TopicListWatcher class to all updates and only send out the next update after 
the previous update finishes. I'll think about handling that.



-- 
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: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to