Repository: hbase Updated Branches: refs/heads/0.98 3cd5cf819 -> 7ffc454cc
HBASE-10871 Indefinite OPEN/CLOSE wait on busy RegionServers (Esteban) Project: http://git-wip-us.apache.org/repos/asf/hbase/repo Commit: http://git-wip-us.apache.org/repos/asf/hbase/commit/7ffc454c Tree: http://git-wip-us.apache.org/repos/asf/hbase/tree/7ffc454c Diff: http://git-wip-us.apache.org/repos/asf/hbase/diff/7ffc454c Branch: refs/heads/0.98 Commit: 7ffc454ccc64f095d8992f03edeb3aacd83de92e Parents: 3cd5cf8 Author: Jimmy Xiang <[email protected]> Authored: Fri Jun 13 08:52:09 2014 -0700 Committer: Jimmy Xiang <[email protected]> Committed: Fri Jun 13 08:57:02 2014 -0700 ---------------------------------------------------------------------- .../org/apache/hadoop/hbase/master/AssignmentManager.java | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/hbase/blob/7ffc454c/hbase-server/src/main/java/org/apache/hadoop/hbase/master/AssignmentManager.java ---------------------------------------------------------------------- diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/AssignmentManager.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/AssignmentManager.java index 72d1876..e275df0 100644 --- a/hbase-server/src/main/java/org/apache/hadoop/hbase/master/AssignmentManager.java +++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/master/AssignmentManager.java @@ -1627,6 +1627,9 @@ public class AssignmentManager extends ZooKeeperListener { + " has timed out, but the regions might" + " already be opened on it.", e); } + // wait and reset the re-try count, server might be just busy. + Thread.sleep(100); + i--; continue; } throw e; @@ -2044,8 +2047,8 @@ public class AssignmentManager extends ZooKeeperListener { } } else if (retry) { needNewPlan = false; - LOG.warn(assignMsg + ", trying to assign to the same region server " + - "try=" + i + " of " + this.maximumAttempts, t); + i--; // we want to retry as many times as needed as long as the RS is not dead. + LOG.warn(assignMsg + ", trying to assign to the same region server due ", t); } else { needNewPlan = true; LOG.warn(assignMsg + ", trying to assign elsewhere instead;" +
