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

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


The following commit(s) were added to refs/heads/branch-2.9 by this push:
     new cf73589caed [fix][broker] Fix NPE when get 
/admin/v2/namespaces/public/default/maxTopicsPerNamespace (#16076)
cf73589caed is described below

commit cf73589caede55081505158fdf2747c527672ab1
Author: Cong Zhao <[email protected]>
AuthorDate: Thu Jun 23 12:13:05 2022 +0800

    [fix][broker] Fix NPE when get 
/admin/v2/namespaces/public/default/maxTopicsPerNamespace (#16076)
    
    (cherry picked from commit c7d74f39757371dd1b2864602534539f7d8cd4cf)
---
 .../main/java/org/apache/pulsar/broker/admin/impl/NamespacesBase.java  | 3 ++-
 .../src/test/java/org/apache/pulsar/broker/admin/NamespacesTest.java   | 2 ++
 2 files changed, 4 insertions(+), 1 deletion(-)

diff --git 
a/pulsar-broker/src/main/java/org/apache/pulsar/broker/admin/impl/NamespacesBase.java
 
b/pulsar-broker/src/main/java/org/apache/pulsar/broker/admin/impl/NamespacesBase.java
index edbe1bfe385..caf75a99d1d 100644
--- 
a/pulsar-broker/src/main/java/org/apache/pulsar/broker/admin/impl/NamespacesBase.java
+++ 
b/pulsar-broker/src/main/java/org/apache/pulsar/broker/admin/impl/NamespacesBase.java
@@ -2559,7 +2559,8 @@ public abstract class NamespacesBase extends 
AdminResource {
 
     protected int internalGetMaxTopicsPerNamespace() {
         validateNamespacePolicyOperation(namespaceName, PolicyName.MAX_TOPICS, 
PolicyOperation.READ);
-        return getNamespacePolicies(namespaceName).max_topics_per_namespace;
+        return getNamespacePolicies(namespaceName).max_topics_per_namespace != 
null
+                ? getNamespacePolicies(namespaceName).max_topics_per_namespace 
: 0;
     }
 
    protected void internalRemoveMaxTopicsPerNamespace() {
diff --git 
a/pulsar-broker/src/test/java/org/apache/pulsar/broker/admin/NamespacesTest.java
 
b/pulsar-broker/src/test/java/org/apache/pulsar/broker/admin/NamespacesTest.java
index 69bede376c8..636cbe59805 100644
--- 
a/pulsar-broker/src/test/java/org/apache/pulsar/broker/admin/NamespacesTest.java
+++ 
b/pulsar-broker/src/test/java/org/apache/pulsar/broker/admin/NamespacesTest.java
@@ -1502,6 +1502,8 @@ public class NamespacesTest extends 
MockedPulsarServiceBaseTest {
         admin.tenants().createTenant("testTenant", tenantInfo);
         admin.namespaces().createNamespace(namespace, Sets.newHashSet("use"));
 
+        assertEquals(0, 
admin.namespaces().getMaxTopicsPerNamespace(namespace));
+
         admin.namespaces().setMaxTopicsPerNamespace(namespace, 10);
         assertEquals(10, 
admin.namespaces().getMaxTopicsPerNamespace(namespace));
 

Reply via email to