Index: src/main/java/org/apache/hadoop/hbase/master/SplitLogManager.java =================================================================== --- src/main/java/org/apache/hadoop/hbase/master/SplitLogManager.java (revision 1442840) +++ src/main/java/org/apache/hadoop/hbase/master/SplitLogManager.java (working copy) @@ -255,7 +255,7 @@ // recover-lease is done. totalSize will be under in most cases and the // metrics that it drives will also be under-reported. totalSize += lf.getLen(); - if (enqueueSplitTask(lf.getPath().toString(), batch) == false) { + if (enqueueSplitTask(lf.getPath().toUri().getRawPath(), batch) == false) { throw new IOException("duplicate log split scheduled for " + lf.getPath()); } Index: src/main/java/org/apache/hadoop/hbase/regionserver/SplitLogWorker.java =================================================================== --- src/main/java/org/apache/hadoop/hbase/regionserver/SplitLogWorker.java (revision 1442840) +++ src/main/java/org/apache/hadoop/hbase/regionserver/SplitLogWorker.java (working copy) @@ -104,6 +104,7 @@ LOG.warn("could not find root dir or fs", e); return Status.RESIGNED; } + filename = new Path(filename).toUri().getRawPath(); // TODO have to correctly figure out when log splitting has been // interrupted or has encountered a transient error and when it has // encountered a bad non-retry-able persistent error.