hbase-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From te...@apache.org
Subject hbase git commit: HBASE-18058 Zookeeper retry sleep time should have an upper limit (Allan Yang)
Date Fri, 19 May 2017 17:58:47 GMT
Repository: hbase
Updated Branches:
  refs/heads/branch-1 f348caf7f -> 300c5388f


HBASE-18058 Zookeeper retry sleep time should have an upper limit (Allan Yang)


Project: http://git-wip-us.apache.org/repos/asf/hbase/repo
Commit: http://git-wip-us.apache.org/repos/asf/hbase/commit/300c5388
Tree: http://git-wip-us.apache.org/repos/asf/hbase/tree/300c5388
Diff: http://git-wip-us.apache.org/repos/asf/hbase/diff/300c5388

Branch: refs/heads/branch-1
Commit: 300c5388f2358418faff53558967e00e616c8e1a
Parents: f348caf
Author: tedyu <yuzhihong@gmail.com>
Authored: Fri May 19 10:58:38 2017 -0700
Committer: tedyu <yuzhihong@gmail.com>
Committed: Fri May 19 10:58:38 2017 -0700

----------------------------------------------------------------------
 .../apache/hadoop/hbase/zookeeper/RecoverableZooKeeper.java  | 8 ++++----
 .../main/java/org/apache/hadoop/hbase/zookeeper/ZKUtil.java  | 3 ++-
 hbase-common/src/main/resources/hbase-default.xml            | 7 +++++++
 3 files changed, 13 insertions(+), 5 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/hbase/blob/300c5388/hbase-client/src/main/java/org/apache/hadoop/hbase/zookeeper/RecoverableZooKeeper.java
----------------------------------------------------------------------
diff --git a/hbase-client/src/main/java/org/apache/hadoop/hbase/zookeeper/RecoverableZooKeeper.java
b/hbase-client/src/main/java/org/apache/hadoop/hbase/zookeeper/RecoverableZooKeeper.java
index 9dad2d1..75cee0a 100644
--- a/hbase-client/src/main/java/org/apache/hadoop/hbase/zookeeper/RecoverableZooKeeper.java
+++ b/hbase-client/src/main/java/org/apache/hadoop/hbase/zookeeper/RecoverableZooKeeper.java
@@ -100,20 +100,20 @@ public class RecoverableZooKeeper {
   private static final int ID_LENGTH_SIZE =  Bytes.SIZEOF_INT;
 
   public RecoverableZooKeeper(String quorumServers, int sessionTimeout,
-      Watcher watcher, int maxRetries, int retryIntervalMillis)
+      Watcher watcher, int maxRetries, int retryIntervalMillis, int maxSleepTime)
   throws IOException {
-    this(quorumServers, sessionTimeout, watcher, maxRetries, retryIntervalMillis,
+    this(quorumServers, sessionTimeout, watcher, maxRetries, retryIntervalMillis, maxSleepTime,
         null);
   }
 
   @edu.umd.cs.findbugs.annotations.SuppressWarnings(value="DE_MIGHT_IGNORE",
       justification="None. Its always been this way.")
   public RecoverableZooKeeper(String quorumServers, int sessionTimeout,
-      Watcher watcher, int maxRetries, int retryIntervalMillis, String identifier)
+      Watcher watcher, int maxRetries, int retryIntervalMillis, int maxSleepTime, String
identifier)
   throws IOException {
     // TODO: Add support for zk 'chroot'; we don't add it to the quorumServers String as
we should.
     this.retryCounterFactory =
-      new RetryCounterFactory(maxRetries+1, retryIntervalMillis);
+      new RetryCounterFactory(maxRetries+1, retryIntervalMillis, maxSleepTime);
 
     if (identifier == null || identifier.length() == 0) {
       // the identifier = processID@hostName

http://git-wip-us.apache.org/repos/asf/hbase/blob/300c5388/hbase-client/src/main/java/org/apache/hadoop/hbase/zookeeper/ZKUtil.java
----------------------------------------------------------------------
diff --git a/hbase-client/src/main/java/org/apache/hadoop/hbase/zookeeper/ZKUtil.java b/hbase-client/src/main/java/org/apache/hadoop/hbase/zookeeper/ZKUtil.java
index 3cbc317..4f4b2eb 100644
--- a/hbase-client/src/main/java/org/apache/hadoop/hbase/zookeeper/ZKUtil.java
+++ b/hbase-client/src/main/java/org/apache/hadoop/hbase/zookeeper/ZKUtil.java
@@ -133,10 +133,11 @@ public class ZKUtil {
     int retry = conf.getInt("zookeeper.recovery.retry", 3);
     int retryIntervalMillis =
       conf.getInt("zookeeper.recovery.retry.intervalmill", 1000);
+    int maxSleepTime = conf.getInt("zookeeper.recovery.retry.maxsleeptime", 60000);
     zkDumpConnectionTimeOut = conf.getInt("zookeeper.dump.connection.timeout",
         1000);
     return new RecoverableZooKeeper(ensemble, timeout, watcher,
-        retry, retryIntervalMillis, identifier);
+        retry, retryIntervalMillis, maxSleepTime, identifier);
   }
 
   /**

http://git-wip-us.apache.org/repos/asf/hbase/blob/300c5388/hbase-common/src/main/resources/hbase-default.xml
----------------------------------------------------------------------
diff --git a/hbase-common/src/main/resources/hbase-default.xml b/hbase-common/src/main/resources/hbase-default.xml
index c571289..e9fe34f 100644
--- a/hbase-common/src/main/resources/hbase-default.xml
+++ b/hbase-common/src/main/resources/hbase-default.xml
@@ -103,6 +103,13 @@ possible configurations would overwhelm and obscure the important.
     and running -->
 
   <property>
+    <name>zookeeper.recovery.retry.maxsleeptime</name>
+    <value>60000</value>
+    <description>Max sleep time before retry zookeeper operations in milliseconds,
+    a max time is needed here so that sleep time won't grow unboundedly
+    </description>
+  </property>
+  <property>
     <name>hbase.local.dir</name>
     <value>${hbase.tmp.dir}/local/</value>
     <description>Directory on the local filesystem to be used


Mime
View raw message