HDFS-10722. Fix race condition in TestEditLog#testBatchedSyncWithClosedLogs. 
Contributed by Daryn Sharp.


Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo
Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/4a8e6dc0
Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/4a8e6dc0
Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/4a8e6dc0

Branch: refs/heads/YARN-2915
Commit: 4a8e6dc02fb1d0dc89c3981b444575494511444a
Parents: 8c9b44e
Author: Kihwal Lee <kih...@apache.org>
Authored: Thu Aug 4 11:53:44 2016 -0500
Committer: Kihwal Lee <kih...@apache.org>
Committed: Thu Aug 4 11:53:44 2016 -0500

----------------------------------------------------------------------
 .../org/apache/hadoop/hdfs/server/namenode/TestEditLog.java | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/hadoop/blob/4a8e6dc0/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestEditLog.java
----------------------------------------------------------------------
diff --git 
a/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestEditLog.java
 
b/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestEditLog.java
index dcd7cc2..6aa619f 100644
--- 
a/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestEditLog.java
+++ 
b/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestEditLog.java
@@ -591,9 +591,12 @@ public class TestEditLog {
 
       // Log an edit from thread A
       doLogEdit(threadA, editLog, "thread-a 1");
-      assertEquals("logging edit without syncing should do not affect txid",
-        1, editLog.getSyncTxId());
-
+      // async log is doing batched syncs in background.  logSync just ensures
+      // the edit is durable, so the txid may increase prior to sync
+      if (!useAsyncEditLog) {
+        assertEquals("logging edit without syncing should do not affect txid",
+            1, editLog.getSyncTxId());
+      }
       // logSyncAll in Thread B
       doCallLogSyncAll(threadB, editLog);
       assertEquals("logSyncAll should sync thread A's transaction",


---------------------------------------------------------------------
To unsubscribe, e-mail: common-commits-unsubscr...@hadoop.apache.org
For additional commands, e-mail: common-commits-h...@hadoop.apache.org

Reply via email to