This is an automated email from the ASF dual-hosted git repository.
penghui 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 8f44c1a4bae [fix][admin] Fix NPE when get OffloadThreshold on
namespace (#18061)
8f44c1a4bae is described below
commit 8f44c1a4bae8442b8e25ab7fbccbfbb2917d9322
Author: Jiwei Guo <[email protected]>
AuthorDate: Mon Oct 17 17:45:35 2022 +0800
[fix][admin] Fix NPE when get OffloadThreshold on namespace (#18061)
---
.../src/main/java/org/apache/pulsar/broker/admin/v2/Namespaces.java | 3 ++-
.../src/test/java/org/apache/pulsar/broker/admin/NamespacesTest.java | 3 +++
2 files changed, 5 insertions(+), 1 deletion(-)
diff --git
a/pulsar-broker/src/main/java/org/apache/pulsar/broker/admin/v2/Namespaces.java
b/pulsar-broker/src/main/java/org/apache/pulsar/broker/admin/v2/Namespaces.java
index dace261ceb6..9b07427c72d 100644
---
a/pulsar-broker/src/main/java/org/apache/pulsar/broker/admin/v2/Namespaces.java
+++
b/pulsar-broker/src/main/java/org/apache/pulsar/broker/admin/v2/Namespaces.java
@@ -2054,7 +2054,8 @@ public class Namespaces extends NamespacesBase {
validateNamespacePolicyOperationAsync(namespaceName,
PolicyName.OFFLOAD, PolicyOperation.READ)
.thenCompose(__ -> getNamespacePoliciesAsync(namespaceName))
.thenAccept(policies -> {
- if (policies.offload_policies == null) {
+ if (policies.offload_policies == null
+ ||
policies.offload_policies.getManagedLedgerOffloadThresholdInBytes() == null) {
asyncResponse.resume(policies.offload_threshold);
} else {
asyncResponse.resume(policies.offload_policies.getManagedLedgerOffloadThresholdInBytes());
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 0d2b8808ed7..a4f9fc3f52f 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
@@ -1401,6 +1401,9 @@ public class NamespacesTest extends
MockedPulsarServiceBaseTest {
admin.namespaces().createNamespace(namespace,
Set.of(testLocalCluster));
admin.topics().createNonPartitionedTopic(topicName.toString());
+ admin.namespaces().setOffloadDeleteLag(namespace, 10000,
TimeUnit.SECONDS);
+ assertEquals(-1, admin.namespaces().getOffloadThreshold(namespace));
+
// assert we get the default which indicates it will fall back to
default
assertEquals(-1, admin.namespaces().getOffloadThreshold(namespace));
// the ledger config should have the expected value