diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceManager.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceManager.java index 2cf3a824f32..bfd338dd7f5 100644 --- a/hbase-server/src/main/java/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceManager.java +++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/replication/regionserver/ReplicationSourceManager.java @@ -782,20 +782,11 @@ public class ReplicationSourceManager implements ReplicationListener { @Override public void run() { List currentReplicators = null; - while (currentReplicators == null) { - try { - currentReplicators = replicationQueues.getListOfReplicators(); - } catch (ReplicationException e1) { - LOG.warn("Failure in getListOfReplicators(), will retry later", e1); - try { - Thread.sleep(ThreadLocalRandom.current().nextInt(10000)); - } catch (InterruptedException e2) { - LOG.warn("Interrupted while waiting for list of replicators to be available, " - + "will not adopt any abandoned queues", e2); - Thread.currentThread().interrupt(); - break; - } - } + try { + currentReplicators = replicationQueues.getListOfReplicators(); + } catch (ReplicationException e) { + server.abort("Failed to get all replicators", e); + return; } if (currentReplicators == null || currentReplicators.isEmpty()) { return;