瀏覽代碼

HDFS-13559. TestBlockScanner does not close TestContext properly. Contributed by Anbang Hu.

(cherry picked from commit 454de3b543c8b00a9ab566c7d1c64d7e4cffee0f)
Inigo Goiri 7 年之前
父節點
當前提交
1d1806f862

+ 4 - 1
hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/datanode/TestBlockScanner.java

@@ -125,6 +125,7 @@ public class TestBlockScanner {
       if (cluster != null) {
         for (int i = 0; i < numNameServices; i++) {
           dfs[i].delete(new Path("/test"), true);
+          dfs[i].close();
         }
         cluster.shutdown();
       }
@@ -817,6 +818,7 @@ public class TestBlockScanner {
           "in recentSuspectBlocks.", info.goodBlocks.contains(first));
       info.blocksScanned = 0;
     }
+    ctx.close();
   }
 
   /**
@@ -873,6 +875,7 @@ public class TestBlockScanner {
       info.blocksScanned = 0;
     }
     info.sem.release(1);
+    ctx.close();
   }
 
   /**
@@ -933,12 +936,12 @@ public class TestBlockScanner {
     os.write(bytes);
     os.hflush();
     os.close();
-    fs.close();
 
     // verify that volume scanner does not find bad blocks after append.
     waitForRescan(info, numExpectedBlocks);
 
     GenericTestUtils.setLogLevel(DataNode.LOG, Level.INFO);
+    ctx.close();
   }
 
   private void waitForRescan(final TestScanResultHandler.Info info,