Browse Source

svn merge -c 1403745 FIXES: HADOOP-8986. Server$Call object is never released after it is sent (bobby)

git-svn-id: https://svn.apache.org/repos/asf/hadoop/common/branches/branch-2@1403747 13f79535-47bb-0310-9956-ffa450edef68
Robert Joseph Evans 12 years ago
parent
commit
d1d1165a7d

+ 2 - 0
hadoop-common-project/hadoop-common/CHANGES.txt

@@ -836,6 +836,8 @@ Release 0.23.5 - UNRELEASED
     HADOOP-8962. RawLocalFileSystem.listStatus fails when a child filename
     contains a colon (jlowe via bobby)
 
+    HADOOP-8986. Server$Call object is never released after it is sent (bobby)
+
 Release 0.23.4 - UNRELEASED
 
   INCOMPATIBLE CHANGES

+ 2 - 0
hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ipc/Server.java

@@ -933,6 +933,8 @@ public abstract class Server {
             return true;
           }
           if (!call.rpcResponse.hasRemaining()) {
+            //Clear out the response buffer so it can be collected
+            call.rpcResponse = null;
             call.connection.decRpcCount();
             if (numElements == 1) {    // last call fully processes.
               done = true;             // no more data for this channel.