You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pulsar.apache.org by si...@apache.org on 2019/07/03 01:45:07 UTC
[pulsar] branch master updated: [pulsar-broker] fix NPE at
managed-ledger when fetch reader internal-stats (#4615)
This is an automated email from the ASF dual-hosted git repository.
sijie 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 b306552 [pulsar-broker] fix NPE at managed-ledger when fetch reader internal-stats (#4615)
b306552 is described below
commit b306552ff0756f0b555c125286cc4b8ed4b11c1e
Author: Rajan Dhabalia <rd...@apache.org>
AuthorDate: Tue Jul 2 18:45:01 2019 -0700
[pulsar-broker] fix NPE at managed-ledger when fetch reader internal-stats (#4615)
### Motivation
Broker throws NPE when pulsar-admin tries to fetch stats-internal for topic with reader.
```
Caused by: java.lang.NullPointerException
at org.apache.bookkeeper.mledger.impl.ManagedCursorImpl.getProperties(ManagedCursorImpl.java:234) ~[classes/:?]
at org.apache.pulsar.broker.service.persistent.PersistentTopic.lambda$getInternalStats$48(PersistentTopic.java:1461) ~[classes/:?]
at java.lang.Iterable.forEach(Iterable.java:75) ~[?:1.8.0_92]
at org.apache.pulsar.broker.service.persistent.PersistentTopic.getInternalStats(PersistentTopic.java:1446) ~[classes/:?]
at org.apache.pulsar.broker.admin.impl.PersistentTopicsBase.internalGetInternalStats(PersistentTopicsBase.java:621) ~[classes/:?]
at org.apache.pulsar.broker.admin.v2.PersistentTopics.getInternalStats(PersistentTopics.java:430) ~[classes/:?]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_92]
```
---
.../main/java/org/apache/bookkeeper/mledger/impl/ManagedCursorImpl.java | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/managed-ledger/src/main/java/org/apache/bookkeeper/mledger/impl/ManagedCursorImpl.java b/managed-ledger/src/main/java/org/apache/bookkeeper/mledger/impl/ManagedCursorImpl.java
index a936954..d185274 100644
--- a/managed-ledger/src/main/java/org/apache/bookkeeper/mledger/impl/ManagedCursorImpl.java
+++ b/managed-ledger/src/main/java/org/apache/bookkeeper/mledger/impl/ManagedCursorImpl.java
@@ -231,7 +231,7 @@ public class ManagedCursorImpl implements ManagedCursor {
@Override
public Map<String, Long> getProperties() {
- return lastMarkDeleteEntry.properties;
+ return lastMarkDeleteEntry != null ? lastMarkDeleteEntry.properties : Collections.emptyMap();
}
/**