Repository: hbase Updated Branches: refs/heads/master 361be5334 -> 3bca01854
HBASE-20842 Infinite loop when replaying remote wals Signed-off-by: zhangduo <[email protected]> Project: http://git-wip-us.apache.org/repos/asf/hbase/repo Commit: http://git-wip-us.apache.org/repos/asf/hbase/commit/3bca0185 Tree: http://git-wip-us.apache.org/repos/asf/hbase/tree/3bca0185 Diff: http://git-wip-us.apache.org/repos/asf/hbase/diff/3bca0185 Branch: refs/heads/master Commit: 3bca01854ace8be33ae5b0292faeeda461261446 Parents: 361be53 Author: Guanghao Zhang <[email protected]> Authored: Wed Jul 4 15:47:27 2018 +0800 Committer: zhangduo <[email protected]> Committed: Sun Jul 8 09:35:45 2018 +0800 ---------------------------------------------------------------------- .../replication/SyncReplicationReplayWALRemoteProcedure.java | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/hbase/blob/3bca0185/hbase-server/src/main/java/org/apache/hadoop/hbase/master/replication/SyncReplicationReplayWALRemoteProcedure.java ---------------------------------------------------------------------- diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/replication/SyncReplicationReplayWALRemoteProcedure.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/replication/SyncReplicationReplayWALRemoteProcedure.java index 9f4f330..ba8dd78 100644 --- a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/replication/SyncReplicationReplayWALRemoteProcedure.java +++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/replication/SyncReplicationReplayWALRemoteProcedure.java @@ -161,9 +161,10 @@ public class SyncReplicationReplayWALRemoteProcedure extends Procedure<MasterPro } catch (FailedRemoteDispatchException e) { LOG.warn( "Can not add remote operation for replay wals {} on {} for peer id={}, " - + "this usually because the server is already dead, retry", + + "this usually because the server is already dead", wals, targetServer, peerId); - throw new ProcedureYieldException(); + // Return directly and the parent procedure will assign a new worker to replay wals + return null; } dispatched = true; event = new ProcedureEvent<>(this);
