TestHLogSplit.testLogCannotBeWrittenOnceParsed is failing.
This test starts a thread that writes one edit to the log, syncs and counts. During this, a HLog.splitLog operation is started. splitLog recovers the log lease before reading the log, so that the original regionserver could not wake up and write after the split process started.
The test compares the number of edits reported by the split process and by the writer thread. Writer thread (called zombie in the test) should report <= than the splitLog (sync() might raise after the last edit gets written and the edit won't get counted by zombie thread). However it appears that the zombie counts 1-2 more edits. So it looks like it can sync without a lease.
This might be a hdfs-0.20 related issue.
- is blocked by
HDFS-1186 0.20: DNs should interrupt writers at start of recovery
- is related to
HBASE-7636 TestDistributedLogSplitting#testThreeRSAbort fails against hadoop 2.0