This is an automated email from the ASF dual-hosted git repository. yong pushed a commit to branch branch-4.15 in repository https://gitbox.apache.org/repos/asf/bookkeeper.git
commit 8f673e50647fcff1b9f796461d86eef862deb917 Author: gaozhangmin <[email protected]> AuthorDate: Thu Nov 3 17:04:43 2022 +0800 Using a separate thread pool to execute openWithMetadata (#3548) (cherry picked from commit 5724bc8434a4d6903487221d39713f39a4bcb6b4) --- .../main/java/org/apache/bookkeeper/client/LedgerOpenOp.java | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/bookkeeper-server/src/main/java/org/apache/bookkeeper/client/LedgerOpenOp.java b/bookkeeper-server/src/main/java/org/apache/bookkeeper/client/LedgerOpenOp.java index 6ba4a11e3b..847da0d89c 100644 --- a/bookkeeper-server/src/main/java/org/apache/bookkeeper/client/LedgerOpenOp.java +++ b/bookkeeper-server/src/main/java/org/apache/bookkeeper/client/LedgerOpenOp.java @@ -113,12 +113,10 @@ class LedgerOpenOp { * Asynchronously read the ledger metadata node. */ bk.getLedgerManager().readLedgerMetadata(ledgerId) - .whenComplete((metadata, exception) -> { - if (exception != null) { - openComplete(BKException.getExceptionCode(exception), null); - } else { - openWithMetadata(metadata); - } + .thenAcceptAsync(this::openWithMetadata, bk.getScheduler().chooseThread(ledgerId)) + .exceptionally(exception -> { + openComplete(BKException.getExceptionCode(exception), null); + return null; }); }
