This is an automated email from the ASF dual-hosted git repository.

lhotari pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/pulsar.git


The following commit(s) were added to refs/heads/master by this push:
     new 37300ab156d [fix][broker] Fix NPE while publishing Metadata-Event with 
not init producer (#24079)
37300ab156d is described below

commit 37300ab156d58d6d5b4d98aaba003999a879e013
Author: Rajan Dhabalia <rdhaba...@apache.org>
AuthorDate: Mon Mar 17 01:45:36 2025 -0700

    [fix][broker] Fix NPE while publishing Metadata-Event with not init 
producer (#24079)
---
 .../apache/pulsar/broker/service/PulsarMetadataEventSynchronizer.java   | 2 ++
 1 file changed, 2 insertions(+)

diff --git 
a/pulsar-broker/src/main/java/org/apache/pulsar/broker/service/PulsarMetadataEventSynchronizer.java
 
b/pulsar-broker/src/main/java/org/apache/pulsar/broker/service/PulsarMetadataEventSynchronizer.java
index f49188263a8..a9564642c1a 100644
--- 
a/pulsar-broker/src/main/java/org/apache/pulsar/broker/service/PulsarMetadataEventSynchronizer.java
+++ 
b/pulsar-broker/src/main/java/org/apache/pulsar/broker/service/PulsarMetadataEventSynchronizer.java
@@ -121,6 +121,7 @@ public class PulsarMetadataEventSynchronizer implements 
MetadataEventSynchronize
         if (!isProducerStarted()) {
             log.info("Producer is not started on {}, failed to publish {}", 
topicName, event);
             future.completeExceptionally(new IllegalStateException("producer 
is not started yet"));
+            return;
         }
         producer.newMessage().value(event).sendAsync().thenAccept(__ -> {
             log.info("successfully published metadata change event {}", event);
@@ -136,6 +137,7 @@ public class PulsarMetadataEventSynchronizer implements 
MetadataEventSynchronize
     protected void startProducer() {
         if (isClosingOrClosed()) {
             log.info("[{}] Skip to start new producer because the synchronizer 
is closed", topicName);
+            return;
         }
         if (producer != null) {
             log.error("[{}] Failed to start the producer because the producer 
has been set, state: {}",

Reply via email to