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/06/28 15:13:25 UTC
[pulsar] 20/29: [fix][broker] Fix NPE when get /admin/v2/namespaces/public/default/maxTopicsPerNamespace (#16076)
This is an automated email from the ASF dual-hosted git repository.
penghui pushed a commit to branch branch-2.10
in repository https://gitbox.apache.org/repos/asf/pulsar.git
commit 6b3ad13986d7f104c3d4ed35f29d82766a1356b1
Author: Cong Zhao <zh...@apache.org>
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 4f589a5684e..5cdbdc9930a 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
@@ -2564,7 +2564,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 0b62f6ea90e..cd9fef4b34c 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
@@ -1500,6 +1500,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));