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


The following commit(s) were added to refs/heads/branch-2.8 by this push:
     new a5ae0cf  Add log to print exception stack. (#12345)
a5ae0cf is described below

commit a5ae0cf790309f58787b1e41c437c1bfda5073c2
Author: Jiwei Guo <[email protected]>
AuthorDate: Fri Oct 15 22:01:55 2021 +0800

    Add log to print exception stack. (#12345)
    
    ## Motivation
    PersistentTopic#subscribe doesn't  print other exceptions such as NPE. 
which could not help us to locate the cause of the problem.
    
    ## Example stack
    ```
    21:58:30.785 [pulsar-io-4-3] INFO  
org.apache.pulsar.broker.service.ServerCnx - [/10.28.2.2:54474] Subscribing on 
topic persistent://public/product-full-prod/6827 / maestro-marek2
    21:58:30.786 [pulsar-io-4-3] INFO  
org.apache.pulsar.broker.service.persistent.PersistentTopic - 
[persistent://public/product-full-prod/6827][maestro-marek2] Creating 
non-durable subscription at msg id -1:-1:-1:-1
    21:58:30.786 [pulsar-io-4-3] INFO  
org.apache.bookkeeper.mledger.impl.NonDurableCursorImpl - 
[public/product-full-prod/persistent/6827] Created non-durable cursor 
read-position=88853:0 mark-delete-position=88853:-1
    21:58:30.786 [pulsar-io-4-3] INFO  
org.apache.bookkeeper.mledger.impl.ManagedLedgerImpl - 
[public/product-full-prod/persistent/6827] Opened new cursor: 
NonDurableCursorImpl{ledger=public/product-full-prod/persistent/6827, 
ackPos=88853:-1, readPos=88853:0}
    21:58:30.786 [pulsar-io-4-3] INFO  
org.apache.bookkeeper.mledger.impl.ManagedCursorImpl - 
[public/product-full-prod/persistent/6827-maestro-marek2] Rewind from 88853:0 
to 88853:0
    21:58:30.786 [pulsar-io-4-3] WARN  
org.apache.pulsar.broker.service.ServerCnx - 
[/10.28.2.2:54474][persistent://public/product-full-prod/6827][maestro-marek2] 
Failed to create consumer: consumerId=1, null
    java.util.concurrent.CompletionException: java.lang.NullPointerException
        at 
java.util.concurrent.CompletableFuture.encodeThrowable(CompletableFuture.java:314)
 ~[?:?]
        at 
java.util.concurrent.CompletableFuture.uniAcceptNow(CompletableFuture.java:757) 
~[?:?]
        at 
java.util.concurrent.CompletableFuture.uniAcceptStage(CompletableFuture.java:731)
 ~[?:?]
        at 
java.util.concurrent.CompletableFuture.thenAccept(CompletableFuture.java:2108) 
~[?:?]
        at 
org.apache.pulsar.broker.service.persistent.PersistentTopic.lambda$subscribe$14(PersistentTopic.java:762)
        at 
java.util.concurrent.CompletableFuture.uniAcceptNow(CompletableFuture.java:753) 
~[?:?]
        at 
java.util.concurrent.CompletableFuture.uniAcceptStage(CompletableFuture.java:731)
 ~[?:?]
        at 
java.util.concurrent.CompletableFuture.thenAccept(CompletableFuture.java:2108) 
~[?:?]
        at 
org.apache.pulsar.broker.service.persistent.PersistentTopic.subscribe(PersistentTopic.java:758)
        at 
org.apache.pulsar.broker.service.ServerCnx.lambda$null$13(ServerCnx.java:1017)
        at 
java.util.concurrent.CompletableFuture.uniComposeStage(CompletableFuture.java:1106)
 ~[?:?]
        at 
java.util.concurrent.CompletableFuture.thenCompose(CompletableFuture.java:2235) 
~[?:?]
        at 
org.apache.pulsar.broker.service.ServerCnx.lambda$handleSubscribe$16(ServerCnx.java:988)
    ```
---
 .../org/apache/pulsar/broker/service/persistent/PersistentTopic.java  | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git 
a/pulsar-broker/src/main/java/org/apache/pulsar/broker/service/persistent/PersistentTopic.java
 
b/pulsar-broker/src/main/java/org/apache/pulsar/broker/service/persistent/PersistentTopic.java
index 83615f2..30315fb 100644
--- 
a/pulsar-broker/src/main/java/org/apache/pulsar/broker/service/persistent/PersistentTopic.java
+++ 
b/pulsar-broker/src/main/java/org/apache/pulsar/broker/service/persistent/PersistentTopic.java
@@ -795,6 +795,8 @@ public class PersistentTopic extends AbstractTopic
                             consumerName);
                 } else if (e.getCause() instanceof SubscriptionBusyException) {
                     log.warn("[{}][{}] {}", topic, subscriptionName, 
e.getMessage());
+                } else {
+                    log.error("[{}] Failed to create subscription: {}", topic, 
subscriptionName, e);
                 }
 
                 decrementUsageCount();
@@ -802,7 +804,7 @@ public class PersistentTopic extends AbstractTopic
                 return null;
             });
         }).exceptionally(ex -> {
-            log.error("[{}] Failed to create subscription: {} error: {}", 
topic, subscriptionName, ex);
+            log.error("[{}] Failed to create subscription: {}", topic, 
subscriptionName, ex);
             decrementUsageCount();
             if (ex.getCause() instanceof NotAllowedException) {
                 future.completeExceptionally(ex.getCause());

Reply via email to