From 84a08942dd2754a758b94aa3db9b292d894b2f2e Mon Sep 17 00:00:00 2001 From: Qiang Zhao <74767115+mattisonchao@users.noreply.github.com> Date: Tue, 19 Apr 2022 14:31:20 +0800 Subject: [PATCH] [fix][txn] Fix potentially unfinishable future. (#15208) (cherry picked from commit 6aaabdb8acfc9ecf07b1f2799b9d8e2a980343a5) --- .../pulsar/broker/TransactionMetadataStoreService.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/pulsar-broker/src/main/java/org/apache/pulsar/broker/TransactionMetadataStoreService.java b/pulsar-broker/src/main/java/org/apache/pulsar/broker/TransactionMetadataStoreService.java index cd18839798935..902546958c54e 100644 --- a/pulsar-broker/src/main/java/org/apache/pulsar/broker/TransactionMetadataStoreService.java +++ b/pulsar-broker/src/main/java/org/apache/pulsar/broker/TransactionMetadataStoreService.java @@ -243,7 +243,11 @@ public CompletableFuture handleTcClientConnect(TransactionCoordinatorID tc LOG.debug("Handle tc client connect added into pending queue! tcId : {}", tcId.toString()); } } - })); + })).exceptionally(ex -> { + Throwable realCause = FutureUtil.unwrapCompletionException(ex); + completableFuture.completeExceptionally(realCause); + return null; + }); } }); return completableFuture;