Browse Source

HADOOP-10125. no need to process RPC request if the client connection has been dropped. Contributed by Min Ma

git-svn-id: https://svn.apache.org/repos/asf/hadoop/common/trunk@1558575 13f79535-47bb-0310-9956-ffa450edef68
Brandon Li 11 years ago
parent
commit
d3cb721ce0

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

@@ -287,6 +287,9 @@ Trunk (Unreleased)
 
     HADOOP-10044 Improve the javadoc of rpc code (sanjay Radia)
 
+    HADOOP-10125. no need to process RPC request if the client connection
+    has been dropped (Min Ma via brandonli)
+
   OPTIMIZATIONS
 
     HADOOP-7761. Improve the performance of raw comparisons. (todd)

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

@@ -2021,6 +2021,10 @@ public abstract class Server {
           if (LOG.isDebugEnabled()) {
             LOG.debug(Thread.currentThread().getName() + ": " + call + " for RpcKind " + call.rpcKind);
           }
+          if (!call.connection.channel.isOpen()) {
+            LOG.info(Thread.currentThread().getName() + ": skipped " + call);
+            continue;
+          }
           String errorClass = null;
           String error = null;
           RpcStatusProto returnStatus = RpcStatusProto.SUCCESS;