This is an automated email from the ASF dual-hosted git repository.

merlimat pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/bookkeeper.git


The following commit(s) were added to refs/heads/master by this push:
     new 7410987980 Fix race condition NPE in V3 response handling during 
timeout check (#4737)
7410987980 is described below

commit 74109879801cb8966503a4ea7b822b37a8e91105
Author: Justin Prieto <[email protected]>
AuthorDate: Thu Apr 23 10:15:31 2026 -0400

    Fix race condition NPE in V3 response handling during timeout check (#4737)
---
 .../main/java/org/apache/bookkeeper/proto/PerChannelBookieClient.java | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

diff --git 
a/bookkeeper-server/src/main/java/org/apache/bookkeeper/proto/PerChannelBookieClient.java
 
b/bookkeeper-server/src/main/java/org/apache/bookkeeper/proto/PerChannelBookieClient.java
index 75f6f5bb71..25abe5e703 100644
--- 
a/bookkeeper-server/src/main/java/org/apache/bookkeeper/proto/PerChannelBookieClient.java
+++ 
b/bookkeeper-server/src/main/java/org/apache/bookkeeper/proto/PerChannelBookieClient.java
@@ -1535,7 +1535,7 @@ public class PerChannelBookieClient extends 
ChannelInboundHandlerAdapter {
         final BKPacketHeader header = response.getHeader();
 
         final CompletionKey key = newCompletionKey(header.getTxnId(), 
header.getOperation());
-        final CompletionValue completionValue = completionObjects.get(key);
+        final CompletionValue completionValue = completionObjects.remove(key);
 
         if (null == completionValue) {
             // Unexpected response, so log it. The txnId should have been 
present.
@@ -1560,8 +1560,6 @@ public class PerChannelBookieClient extends 
ChannelInboundHandlerAdapter {
                 }
             });
         }
-
-        completionObjects.remove(key);
     }
 
     void initTLSHandshake() {

Reply via email to