Index: src/main/java/org/apache/hadoop/hbase/regionserver/SplitLogWorker.java =================================================================== --- src/main/java/org/apache/hadoop/hbase/regionserver/SplitLogWorker.java (revision 1303060) +++ src/main/java/org/apache/hadoop/hbase/regionserver/SplitLogWorker.java (working copy) @@ -185,18 +185,18 @@ int seq_start = taskReadySeq; List paths = getTaskList(); if (paths == null) { - LOG.warn("Could not get tasks, did someone remove " + - this.watcher.splitLogZNode + " ... worker thread exiting."); - return; - } - int offset = (int)(Math.random() * paths.size()); - for (int i = 0; i < paths.size(); i ++) { - int idx = (i + offset) % paths.size(); - // don't call ZKSplitLog.getNodeName() because that will lead to - // double encoding of the path name - grabTask(ZKUtil.joinZNode(watcher.splitLogZNode, paths.get(idx))); - if (exitWorker == true) { - return; + LOG.warn("Could not get tasks, did someone remove " + + this.watcher.splitLogZNode + " ... worker thread exiting."); + } else { + int offset = (int) (Math.random() * paths.size()); + for (int i = 0; i < paths.size(); i++) { + int idx = (i + offset) % paths.size(); + // don't call ZKSplitLog.getNodeName() because that will lead to + // double encoding of the path name + grabTask(ZKUtil.joinZNode(watcher.splitLogZNode, paths.get(idx))); + if (exitWorker == true) { + return; + } } } synchronized (taskReadyLock) {