فهرست منبع

HDFS-9691. TestBlockManagerSafeMode#testCheckSafeMode fails intermittently. Contributed by Mingliang Liu.

Akira Ajisaka 9 سال پیش
والد
کامیت
ac5da11399

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

@@ -1015,6 +1015,9 @@ Release 2.9.0 - UNRELEASED
     HDFS-9621. getListing wrongly associates Erasure Coding policy to pre-existing
     replicated files under an EC directory. (jing9)
 
+    HDFS-9691. TestBlockManagerSafeMode#testCheckSafeMode fails intermittently.
+    (Mingliang Liu via aajisaka)
+
 Release 2.8.0 - UNRELEASED
 
   NEW FEATURES

+ 4 - 4
hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/blockmanagement/TestBlockManagerSafeMode.java

@@ -137,30 +137,30 @@ public class TestBlockManagerSafeMode {
     }
 
     // PENDING_THRESHOLD -> EXTENSION
+    Whitebox.setInternalState(bmSafeMode, "extension", Integer.MAX_VALUE);
     setSafeModeStatus(BMSafeModeStatus.PENDING_THRESHOLD);
     setBlockSafe(BLOCK_THRESHOLD);
     bmSafeMode.checkSafeMode();
     assertEquals(BMSafeModeStatus.EXTENSION, getSafeModeStatus());
-    Whitebox.setInternalState(bmSafeMode, "smmthread", null);
 
     // PENDING_THRESHOLD -> OFF
+    Whitebox.setInternalState(bmSafeMode, "extension", 0);
     setSafeModeStatus(BMSafeModeStatus.PENDING_THRESHOLD);
     setBlockSafe(BLOCK_THRESHOLD);
-    Whitebox.setInternalState(bmSafeMode, "extension", 0);
     bmSafeMode.checkSafeMode();
     assertEquals(BMSafeModeStatus.OFF, getSafeModeStatus());
 
     // stays in EXTENSION
-    setSafeModeStatus(BMSafeModeStatus.EXTENSION);
     setBlockSafe(0);
+    setSafeModeStatus(BMSafeModeStatus.EXTENSION);
     Whitebox.setInternalState(bmSafeMode, "extension", 0);
     bmSafeMode.checkSafeMode();
     assertEquals(BMSafeModeStatus.EXTENSION, getSafeModeStatus());
 
     // stays in EXTENSION: pending extension period
+    Whitebox.setInternalState(bmSafeMode, "extension", Integer.MAX_VALUE);
     setSafeModeStatus(BMSafeModeStatus.EXTENSION);
     setBlockSafe(BLOCK_THRESHOLD);
-    Whitebox.setInternalState(bmSafeMode, "extension", Integer.MAX_VALUE);
     bmSafeMode.checkSafeMode();
     assertEquals(BMSafeModeStatus.EXTENSION, getSafeModeStatus());
   }