Преглед на файлове

HDFS-14642. processMisReplicatedBlocks does not return correct processed count. Contributed by Stephen O'Donnell.

Ayush Saxena преди 6 години
родител
ревизия
f77d54c243

+ 1 - 0
hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/blockmanagement/BlockManager.java

@@ -3642,6 +3642,7 @@ public class BlockManager implements BlockStatsMXBean {
           while (iter.hasNext() && processed < limit) {
             BlockInfo blk = iter.next();
             MisReplicationResult r = processMisReplicatedBlock(blk);
+            processed++;
             LOG.debug("BLOCK* processMisReplicatedBlocks: " +
                     "Re-scanned block {}, result is {}", blk, r);
           }

+ 1 - 1
hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/blockmanagement/TestBlocksWithNotEnoughRacks.java

@@ -205,7 +205,7 @@ public class TestBlocksWithNotEnoughRacks {
               "/testFile:  Replica placement policy is violated"));
       assertTrue(fsckOp.contains(" Block should be additionally replicated" +
               " on 1 more rack(s). Total number of racks in the cluster: 2"));
-
+      assertTrue(fsckOp.contains(" Blocks queued for replication:\t1"));
       try {
         DFSTestUtil.waitForReplication(cluster, b, 2, replicationFactor, 0);
       } catch (TimeoutException e) {