You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pulsar.apache.org by pe...@apache.org on 2022/04/04 12:33:24 UTC

[pulsar] 15/15: [fix][broker] Fix potential NPE in Replicator (#15003)

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

penghui pushed a commit to branch branch-2.8
in repository https://gitbox.apache.org/repos/asf/pulsar.git

commit af554a06720ad88d9fbea78c469a2341c05a6b40
Author: Qiang Huang <HQ...@users.noreply.github.com>
AuthorDate: Sat Apr 2 16:54:58 2022 +0800

    [fix][broker] Fix potential NPE in Replicator (#15003)
    
    ### Motivation
    ```java
           public CompletableFuture<MessageId> getFuture() {
                return null;
            }
    ```
    The return value null may cause potential NPE in ` getFuture`.  The method does similarly: CompletableFuture<Void> remove()` & .
    
    ### Modifications
    
    Use ` return CompletableFuture.completedFuture(null);` instead of `return null;`
    
    (cherry picked from commit b604b4c9fb9fdae832bfabc61a0527ee0aec566f)
---
 .../main/java/org/apache/pulsar/broker/service/AbstractReplicator.java  | 2 +-
 .../pulsar/broker/service/nonpersistent/NonPersistentReplicator.java    | 2 +-
 .../apache/pulsar/broker/service/persistent/PersistentReplicator.java   | 2 +-
 3 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/pulsar-broker/src/main/java/org/apache/pulsar/broker/service/AbstractReplicator.java b/pulsar-broker/src/main/java/org/apache/pulsar/broker/service/AbstractReplicator.java
index 34d2b6ecb86..a29382fcdef 100644
--- a/pulsar-broker/src/main/java/org/apache/pulsar/broker/service/AbstractReplicator.java
+++ b/pulsar-broker/src/main/java/org/apache/pulsar/broker/service/AbstractReplicator.java
@@ -203,7 +203,7 @@ public abstract class AbstractReplicator {
 
     public CompletableFuture<Void> remove() {
         // No-op
-        return null;
+        return CompletableFuture.completedFuture(null);
     }
 
     protected boolean isWritable() {
diff --git a/pulsar-broker/src/main/java/org/apache/pulsar/broker/service/nonpersistent/NonPersistentReplicator.java b/pulsar-broker/src/main/java/org/apache/pulsar/broker/service/nonpersistent/NonPersistentReplicator.java
index b003db823ed..744f47298c7 100644
--- a/pulsar-broker/src/main/java/org/apache/pulsar/broker/service/nonpersistent/NonPersistentReplicator.java
+++ b/pulsar-broker/src/main/java/org/apache/pulsar/broker/service/nonpersistent/NonPersistentReplicator.java
@@ -227,7 +227,7 @@ public class NonPersistentReplicator extends AbstractReplicator implements Repli
 
         @Override
         public CompletableFuture<MessageId> getFuture() {
-            return null;
+            return CompletableFuture.completedFuture(null);
         }
     }
 
diff --git a/pulsar-broker/src/main/java/org/apache/pulsar/broker/service/persistent/PersistentReplicator.java b/pulsar-broker/src/main/java/org/apache/pulsar/broker/service/persistent/PersistentReplicator.java
index 0f3f18c4492..03617195cee 100644
--- a/pulsar-broker/src/main/java/org/apache/pulsar/broker/service/persistent/PersistentReplicator.java
+++ b/pulsar-broker/src/main/java/org/apache/pulsar/broker/service/persistent/PersistentReplicator.java
@@ -482,7 +482,7 @@ public class PersistentReplicator extends AbstractReplicator
 
         @Override
         public CompletableFuture<MessageId> getFuture() {
-            return null;
+            return CompletableFuture.completedFuture(null);
         }
     }