Pārlūkot izejas kodu

HDFS-4699. Merge r1469843 from branch-1

git-svn-id: https://svn.apache.org/repos/asf/hadoop/common/branches/branch-1.2@1491539 13f79535-47bb-0310-9956-ffa450edef68
Suresh Srinivas 12 gadi atpakaļ
vecāks
revīzija
1834b85660

+ 3 - 0
CHANGES.txt

@@ -23,6 +23,9 @@ Release 1.2.1 - Unreleased
     HDFS-4581. DataNode.checkDiskError should not be called on network errors.
     (Rohit Kochar via kihwal)
 
+    HDFS-4699. Additional conditions for avoiding unnecessary 
+    DataNode.checkDiskError calls. (Chris Nauroth via kihwal)
+
 Release 1.2.0 - 2013.05.05
 
   INCOMPATIBLE CHANGES

+ 4 - 1
src/hdfs/org/apache/hadoop/hdfs/server/datanode/DataNode.java

@@ -929,7 +929,10 @@ public class DataNode extends Configured
     LOG.warn("checkDiskError: exception: ", e);  
     if (e instanceof SocketException || e instanceof SocketTimeoutException
     	  || e instanceof ClosedByInterruptException 
-    	  || e.getMessage().startsWith("Broken pipe")) {
+    	  || e.getMessage().startsWith("An established connection was aborted")
+    	  || e.getMessage().startsWith("Broken pipe")
+    	  || e.getMessage().startsWith("Connection reset")
+    	  || e.getMessage().contains("java.nio.channels.SocketChannel")) {
       LOG.info("Not checking disk as checkDiskError was called on a network" +
         " related exception");	
       return;