From 065eb86d682123b4ff83a5d397c71b43d72b44bf Mon Sep 17 00:00:00 2001 From: Umesh Agashe Date: Wed, 4 Apr 2018 16:07:50 -0700 Subject: [PATCH] HBASE-20330 ProcedureExecutor.start() gets stuck in recover lease on store rollWriter() fails after creating the file and returns false. In next iteration of while loop in recoverLease() file list is refreshed. --- .../apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/hbase-procedure/src/main/java/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.java b/hbase-procedure/src/main/java/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.java index 8581d825d5e39746374a59b5f74f9dfcd1805916..1796c8e46d21be0a40313fafe2555fc654f1a9f9 100644 --- a/hbase-procedure/src/main/java/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.java +++ b/hbase-procedure/src/main/java/org/apache/hadoop/hbase/procedure2/store/wal/WALProcedureStore.java @@ -359,8 +359,10 @@ public class WALProcedureStore extends ProcedureStoreBase { lock.lock(); try { LOG.trace("Starting WAL Procedure Store lease recovery"); - FileStatus[] oldLogs = getLogFiles(); while (isRunning()) { + // get fresh list of old logs + FileStatus[] oldLogs = getLogFiles(); + // Get Log-MaxID and recover lease on old logs try { flushLogId = initOldLogs(oldLogs); -- 2.16.1