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

yong 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 0b0fe0bb42 fix read write request leak when executor full. (#4024)
0b0fe0bb42 is described below

commit 0b0fe0bb42b535c9b447b6ed95b961899832f76b
Author: lifepuzzlefun <[email protected]>
AuthorDate: Tue Aug 29 14:52:16 2023 +0800

    fix read write request leak when executor full. (#4024)
    
    Co-authored-by: wangjinlong <[email protected]>
---
 .../main/java/org/apache/bookkeeper/proto/BookieRequestProcessor.java | 4 ++++
 .../src/main/java/org/apache/bookkeeper/proto/ReadEntryProcessor.java | 2 +-
 2 files changed, 5 insertions(+), 1 deletion(-)

diff --git 
a/bookkeeper-server/src/main/java/org/apache/bookkeeper/proto/BookieRequestProcessor.java
 
b/bookkeeper-server/src/main/java/org/apache/bookkeeper/proto/BookieRequestProcessor.java
index 7ebd8c90a7..a77b3d7bb5 100644
--- 
a/bookkeeper-server/src/main/java/org/apache/bookkeeper/proto/BookieRequestProcessor.java
+++ 
b/bookkeeper-server/src/main/java/org/apache/bookkeeper/proto/BookieRequestProcessor.java
@@ -667,6 +667,9 @@ public class BookieRequestProcessor implements 
RequestProcessor {
                     BookieProtocol.ETOOMANYREQUESTS,
                     
ResponseBuilder.buildErrorResponse(BookieProtocol.ETOOMANYREQUESTS, r),
                     requestStats.getAddRequestStats());
+                r.release();
+                r.recycle();
+                write.recycle();
             }
         }
     }
@@ -703,6 +706,7 @@ public class BookieRequestProcessor implements 
RequestProcessor {
                     
ResponseBuilder.buildErrorResponse(BookieProtocol.ETOOMANYREQUESTS, r),
                     requestStats.getReadRequestStats());
                 onReadRequestFinish();
+                read.recycle();
             }
         }
     }
diff --git 
a/bookkeeper-server/src/main/java/org/apache/bookkeeper/proto/ReadEntryProcessor.java
 
b/bookkeeper-server/src/main/java/org/apache/bookkeeper/proto/ReadEntryProcessor.java
index 4c9c1c9440..04efd9634b 100644
--- 
a/bookkeeper-server/src/main/java/org/apache/bookkeeper/proto/ReadEntryProcessor.java
+++ 
b/bookkeeper-server/src/main/java/org/apache/bookkeeper/proto/ReadEntryProcessor.java
@@ -189,7 +189,7 @@ class ReadEntryProcessor extends 
PacketProcessorBase<ReadRequest> {
         return String.format("ReadEntry(%d, %d)", request.getLedgerId(), 
request.getEntryId());
     }
 
-    private void recycle() {
+    void recycle() {
         request.recycle();
         super.reset();
         this.recyclerHandle.recycle(this);

Reply via email to