You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by li...@apache.org on 2014/02/13 04:44:45 UTC
svn commit: r1567841 -
/hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/ipc/CallRunner.java
Author: liangxie
Date: Thu Feb 13 03:44:44 2014
New Revision: 1567841
URL: http://svn.apache.org/r1567841
Log:
HBASE-10506 Fail-fast if client connection is lost before the real call be executed in RPC layer
Modified:
hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/ipc/CallRunner.java
Modified: hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/ipc/CallRunner.java
URL: http://svn.apache.org/viewvc/hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/ipc/CallRunner.java?rev=1567841&r1=1567840&r2=1567841&view=diff
==============================================================================
--- hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/ipc/CallRunner.java (original)
+++ hbase/trunk/hbase-server/src/main/java/org/apache/hadoop/hbase/ipc/CallRunner.java Thu Feb 13 03:44:44 2014
@@ -67,6 +67,12 @@ public class CallRunner {
public void run() {
try {
+ if (!call.connection.channel.isOpen()) {
+ if (RpcServer.LOG.isDebugEnabled()) {
+ RpcServer.LOG.debug(Thread.currentThread().getName() + ": skipped " + call);
+ }
+ return;
+ }
this.status.setStatus("Setting up call");
this.status.setConnection(call.connection.getHostAddress(), call.connection.getRemotePort());
if (RpcServer.LOG.isDebugEnabled()) {
@@ -147,4 +153,4 @@ public class CallRunner {
RpcServer.MONITORED_RPC.set(status);
return status;
}
-}
\ No newline at end of file
+}