You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by jx...@apache.org on 2014/02/18 20:28:42 UTC

svn commit: r1569498 - in /hbase/branches/0.98/hbase-server/src/test/java/org/apache/hadoop/hbase: master/cleaner/TestLogsCleaner.java regionserver/TestSplitLogWorker.java

Author: jxiang
Date: Tue Feb 18 19:28:42 2014
New Revision: 1569498

URL: http://svn.apache.org/r1569498
Log:
HBASE-10543 Two rare test failures with TestLogsCleaner and TestSplitLogWorker

Modified:
    hbase/branches/0.98/hbase-server/src/test/java/org/apache/hadoop/hbase/master/cleaner/TestLogsCleaner.java
    hbase/branches/0.98/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestSplitLogWorker.java

Modified: hbase/branches/0.98/hbase-server/src/test/java/org/apache/hadoop/hbase/master/cleaner/TestLogsCleaner.java
URL: http://svn.apache.org/viewvc/hbase/branches/0.98/hbase-server/src/test/java/org/apache/hadoop/hbase/master/cleaner/TestLogsCleaner.java?rev=1569498&r1=1569497&r2=1569498&view=diff
==============================================================================
--- hbase/branches/0.98/hbase-server/src/test/java/org/apache/hadoop/hbase/master/cleaner/TestLogsCleaner.java (original)
+++ hbase/branches/0.98/hbase-server/src/test/java/org/apache/hadoop/hbase/master/cleaner/TestLogsCleaner.java Tue Feb 18 19:28:42 2014
@@ -70,13 +70,12 @@ public class TestLogsCleaner {
     ReplicationQueues repQueues =
         ReplicationFactory.getReplicationQueues(server.getZooKeeper(), conf, server);
     repQueues.init(server.getServerName().toString());
-    Path oldLogDir = new Path(TEST_UTIL.getDataTestDir(),
+    final Path oldLogDir = new Path(TEST_UTIL.getDataTestDir(),
         HConstants.HREGION_OLDLOGDIR_NAME);
     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();
@@ -117,11 +116,17 @@ public class TestLogsCleaner {
 
     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
-    assertEquals(5, fs.listStatus(oldLogDir).length);
+    TEST_UTIL.waitFor(1000, new Waiter.Predicate<Exception>() {
+      @Override
+      public boolean evaluate() throws Exception {
+        return 5 == fs.listStatus(oldLogDir).length;
+      }
+    });
 
     for (FileStatus file : fs.listStatus(oldLogDir)) {
       System.out.println("Kept log files: " + file.getPath().getName());

Modified: hbase/branches/0.98/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestSplitLogWorker.java
URL: http://svn.apache.org/viewvc/hbase/branches/0.98/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestSplitLogWorker.java?rev=1569498&r1=1569497&r2=1569498&view=diff
==============================================================================
--- hbase/branches/0.98/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestSplitLogWorker.java (original)
+++ hbase/branches/0.98/hbase-server/src/test/java/org/apache/hadoop/hbase/regionserver/TestSplitLogWorker.java Tue Feb 18 19:28:42 2014
@@ -235,7 +235,7 @@ public class TestSplitLogWorker {
       byte [] bytes = ZKUtil.getData(zkw, PATH);
       SplitLogTask slt = SplitLogTask.parseFrom(bytes);
       assertTrue(slt.isOwned(SRV));
-      slt = new SplitLogTask.Unassigned(MANAGER);
+      slt = new SplitLogTask.Owned(MANAGER);
       ZKUtil.setData(zkw, PATH, slt.toByteArray());
       waitForCounter(SplitLogCounters.tot_wkr_preempt_task, 0, 1, WAIT_TIME);
     } finally {