diff --git hbase-common/src/main/resources/hbase-default.xml hbase-common/src/main/resources/hbase-default.xml
index 877199e..d6a3980 100644
--- hbase-common/src/main/resources/hbase-default.xml
+++ hbase-common/src/main/resources/hbase-default.xml
@@ -274,13 +274,10 @@ possible configurations would overwhelm and obscure the important.
hbase.master.distributed.log.replay
- true
- Enable 'distributed log replay' as default engine splitting
- WAL files on server crash. This default is new in hbase 1.0. To fall
- back to the old mode 'distributed log splitter', set the value to
- 'false'. 'Disributed log replay' improves MTTR because it does not
- write intermediate files. 'DLR' required that 'hfile.format.version'
- be set to version 3 or higher.
+ false
+ True to enable 'distributed log replay' as default engine splitting
+ WAL files on server crash. 'Disributed log replay' improves MTTR because it does not
+ write intermediate files.
diff --git hbase-server/src/main/java/org/apache/hadoop/hbase/master/MasterFileSystem.java hbase-server/src/main/java/org/apache/hadoop/hbase/master/MasterFileSystem.java
index 7650b94..93bde36 100644
--- hbase-server/src/main/java/org/apache/hadoop/hbase/master/MasterFileSystem.java
+++ hbase-server/src/main/java/org/apache/hadoop/hbase/master/MasterFileSystem.java
@@ -237,6 +237,11 @@ public class MasterFileSystem {
return serverNames;
}
for (FileStatus status : logFolders) {
+ FileStatus[] curLogFiles = FSUtils.listStatus(this.fs, status.getPath(), null);
+ if (curLogFiles == null || curLogFiles.length == 0) {
+ // Empty log folder. No recovery needed
+ continue;
+ }
final ServerName serverName = DefaultWALProvider.getServerNameFromWALDirectoryName(
status.getPath());
if (null == serverName) {
diff --git hbase-server/src/test/java/org/apache/hadoop/hbase/master/TestSplitLogManager.java hbase-server/src/test/java/org/apache/hadoop/hbase/master/TestSplitLogManager.java
index f6a7953..80fb7bf 100644
--- hbase-server/src/test/java/org/apache/hadoop/hbase/master/TestSplitLogManager.java
+++ hbase-server/src/test/java/org/apache/hadoop/hbase/master/TestSplitLogManager.java
@@ -639,6 +639,7 @@ public class TestSplitLogManager {
SplitLogCounters.resetCounters();
Configuration testConf = HBaseConfiguration.create(TEST_UTIL.getConfiguration());
testConf.setBoolean(HConstants.DISTRIBUTED_LOG_REPLAY_KEY, true);
+ ds = new DummyServer(zkw, testConf);
zkw.getRecoverableZooKeeper().create(ZKSplitLog.getEncodedNodeName(zkw, "testRecovery"),
new SplitLogTask.Unassigned(