Browse Source

svn merge -c 1586039 from trunk for HDFS-6204. Fix TestRBWBlockInvalidation: change the last sleep to a loop.

git-svn-id: https://svn.apache.org/repos/asf/hadoop/common/branches/branch-2.4@1586041 13f79535-47bb-0310-9956-ffa450edef68
Tsz-wo Sze 11 years ago
parent
commit
db27bc252d

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

@@ -26,6 +26,9 @@ Release 2.4.1 - UNRELEASED
     HDFS-6206. Fix NullPointerException in DFSUtil.substituteForWildcardAddress.
     (szetszwo) 
 
+    HDFS-6204. Fix TestRBWBlockInvalidation: change the last sleep to a loop.
+    (szetszwo) 
+
 Release 2.4.0 - 2014-04-07 
 
   INCOMPATIBLE CHANGES

+ 8 - 9
hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/blockmanagement/TestRBWBlockInvalidation.java

@@ -126,16 +126,15 @@ public class TestRBWBlockInvalidation {
         }
         Thread.sleep(100);
       }
-      assertEquals("There should be two live replicas", 2,
-          liveReplicas);
+      assertEquals("There should be two live replicas", 2, liveReplicas);
 
-      // sleep for 2 seconds, so that by this time datanode reports the corrupt
-      // block after a live replica of block got replicated.
-      Thread.sleep(2000);
-
-      // Check that there is no corrupt block in the corruptReplicasMap.
-      assertEquals("There should not be any replica in the corruptReplicasMap",
-          0, countReplicas(namesystem, blk).corruptReplicas());
+      while (true) {
+        Thread.sleep(100);
+        if (countReplicas(namesystem, blk).corruptReplicas() == 0) {
+          LOG.info("Corrupt Replicas becomes 0");
+          break;
+        }
+      }
     } finally {
       if (out != null) {
         out.close();