Index: src/test/java/org/apache/hadoop/hbase/master/cleaner/TestLogsCleaner.java =================================================================== --- src/test/java/org/apache/hadoop/hbase/master/cleaner/TestLogsCleaner.java (revision 1587366) +++ src/test/java/org/apache/hadoop/hbase/master/cleaner/TestLogsCleaner.java (working copy) @@ -78,8 +78,7 @@ String fakeMachineName = URLEncoder.encode(server.getServerName().toString(), "UTF8"); - FileSystem fs = FileSystem.get(conf); - LogCleaner cleaner = new LogCleaner(1000, server, conf, fs, oldLogDir); + final FileSystem fs = FileSystem.get(conf); // Create 2 invalid files, 1 "recent" file, 1 very new file and 30 old files long now = System.currentTimeMillis(); @@ -120,10 +119,17 @@ assertEquals(34, fs.listStatus(oldLogDir).length); + LogCleaner cleaner = new LogCleaner(1000, server, conf, fs, oldLogDir); cleaner.chore(); // We end up with the current log file, a newer one and the 3 old log // files which are scheduled for replication + for (int i = 0; i < 10; i++) { + if (5 == fs.listStatus(oldLogDir).length) break; + org.apache.hadoop.hbase.util.Threads.sleep(1000); + } + // We end up with the current log file, a newer one and the 3 old log + // files which are scheduled for replication assertEquals(5, fs.listStatus(oldLogDir).length); for (FileStatus file : fs.listStatus(oldLogDir)) {