You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@zookeeper.apache.org by ha...@apache.org on 2018/11/21 16:56:21 UTC
zookeeper git commit: ZOOKEEPER-3177: Revert globalOutstandingLimit
refactoring changes
Repository: zookeeper
Updated Branches:
refs/heads/master 91460546a -> 1507f67a0
ZOOKEEPER-3177: Revert globalOutstandingLimit refactoring changes
Hopefully this will fix the findBugs issue on master in the right way.
lvfangmin hanm Please validate.
Author: Andor Molnar <an...@apache.org>
Reviewers: Michael Han <ha...@apache.org>, Enrico Olivelli <eo...@gmail.com>
Closes #711 from anmolnar/ZOOKEEPER-3177
Project: http://git-wip-us.apache.org/repos/asf/zookeeper/repo
Commit: http://git-wip-us.apache.org/repos/asf/zookeeper/commit/1507f67a
Tree: http://git-wip-us.apache.org/repos/asf/zookeeper/tree/1507f67a
Diff: http://git-wip-us.apache.org/repos/asf/zookeeper/diff/1507f67a
Branch: refs/heads/master
Commit: 1507f67a06175155003722297daeb60bc912af1d
Parents: 9146054
Author: Andor Molnar <an...@apache.org>
Authored: Wed Nov 21 08:56:08 2018 -0800
Committer: Michael Han <ha...@apache.org>
Committed: Wed Nov 21 08:56:08 2018 -0800
----------------------------------------------------------------------
.../apache/zookeeper/server/ZooKeeperServer.java | 17 ++++++++++++-----
.../server/quorum/FollowerZooKeeperServer.java | 12 ++++++++----
.../server/quorum/LeaderZooKeeperServer.java | 12 ++++++++----
3 files changed, 28 insertions(+), 13 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/zookeeper/blob/1507f67a/zookeeper-server/src/main/java/org/apache/zookeeper/server/ZooKeeperServer.java
----------------------------------------------------------------------
diff --git a/zookeeper-server/src/main/java/org/apache/zookeeper/server/ZooKeeperServer.java b/zookeeper-server/src/main/java/org/apache/zookeeper/server/ZooKeeperServer.java
index 3ab81e7..b417a8f 100644
--- a/zookeeper-server/src/main/java/org/apache/zookeeper/server/ZooKeeperServer.java
+++ b/zookeeper-server/src/main/java/org/apache/zookeeper/server/ZooKeeperServer.java
@@ -87,15 +87,11 @@ public class ZooKeeperServer implements SessionExpirer, ServerStats.Provider {
protected static final Logger LOG;
public static final String GLOBAL_OUTSTANDING_LIMIT = "zookeeper.globalOutstandingLimit";
- protected static int globalOutstandingLimit = 1000;
static {
LOG = LoggerFactory.getLogger(ZooKeeperServer.class);
Environment.logEnv("Server environment:", LOG);
-
- globalOutstandingLimit = Integer.getInteger(GLOBAL_OUTSTANDING_LIMIT, 1000);
- LOG.info("{} = {}", GLOBAL_OUTSTANDING_LIMIT, globalOutstandingLimit);
}
protected ZooKeeperServerBean jmxServerBean;
@@ -864,6 +860,17 @@ public class ZooKeeperServer implements SessionExpirer, ServerStats.Provider {
}
}
+ public int getGlobalOutstandingLimit() {
+ String sc = System.getProperty(GLOBAL_OUTSTANDING_LIMIT);
+ int limit;
+ try {
+ limit = Integer.parseInt(sc);
+ } catch (Exception e) {
+ limit = 1000;
+ }
+ return limit;
+ }
+
public void setServerCnxnFactory(ServerCnxnFactory factory) {
serverCnxnFactory = factory;
}
@@ -1090,7 +1097,7 @@ public class ZooKeeperServer implements SessionExpirer, ServerStats.Provider {
}
public boolean shouldThrottle(long outStandingCount) {
- if (globalOutstandingLimit < getInProcess()) {
+ if (getGlobalOutstandingLimit() < getInProcess()) {
return outStandingCount > 0;
}
return false;
http://git-wip-us.apache.org/repos/asf/zookeeper/blob/1507f67a/zookeeper-server/src/main/java/org/apache/zookeeper/server/quorum/FollowerZooKeeperServer.java
----------------------------------------------------------------------
diff --git a/zookeeper-server/src/main/java/org/apache/zookeeper/server/quorum/FollowerZooKeeperServer.java b/zookeeper-server/src/main/java/org/apache/zookeeper/server/quorum/FollowerZooKeeperServer.java
index ec529de..78c12db 100644
--- a/zookeeper-server/src/main/java/org/apache/zookeeper/server/quorum/FollowerZooKeeperServer.java
+++ b/zookeeper-server/src/main/java/org/apache/zookeeper/server/quorum/FollowerZooKeeperServer.java
@@ -60,10 +60,6 @@ public class FollowerZooKeeperServer extends LearnerZooKeeperServer {
super(logFactory, self.tickTime, self.minSessionTimeout,
self.maxSessionTimeout, zkDb, self);
this.pendingSyncs = new ConcurrentLinkedQueue<Request>();
-
- int divisor = self.getQuorumSize() > 2 ? self.getQuorumSize() - 1 : 1;
- globalOutstandingLimit = Integer.getInteger(GLOBAL_OUTSTANDING_LIMIT, 1000) / divisor;
- LOG.info("Override {} to {}", GLOBAL_OUTSTANDING_LIMIT, globalOutstandingLimit);
}
public Follower getFollower(){
@@ -127,6 +123,14 @@ public class FollowerZooKeeperServer extends LearnerZooKeeperServer {
}
@Override
+ public int getGlobalOutstandingLimit() {
+ int divisor = self.getQuorumSize() > 2 ? self.getQuorumSize() - 1 : 1;
+ int globalOutstandingLimit = super.getGlobalOutstandingLimit() / divisor;
+ LOG.info("Override {} to {}", GLOBAL_OUTSTANDING_LIMIT, globalOutstandingLimit);
+ return globalOutstandingLimit;
+ }
+
+ @Override
public String getState() {
return "follower";
}
http://git-wip-us.apache.org/repos/asf/zookeeper/blob/1507f67a/zookeeper-server/src/main/java/org/apache/zookeeper/server/quorum/LeaderZooKeeperServer.java
----------------------------------------------------------------------
diff --git a/zookeeper-server/src/main/java/org/apache/zookeeper/server/quorum/LeaderZooKeeperServer.java b/zookeeper-server/src/main/java/org/apache/zookeeper/server/quorum/LeaderZooKeeperServer.java
index c6f60e1..e1d1bb6 100644
--- a/zookeeper-server/src/main/java/org/apache/zookeeper/server/quorum/LeaderZooKeeperServer.java
+++ b/zookeeper-server/src/main/java/org/apache/zookeeper/server/quorum/LeaderZooKeeperServer.java
@@ -55,10 +55,6 @@ public class LeaderZooKeeperServer extends QuorumZooKeeperServer {
*/
LeaderZooKeeperServer(FileTxnSnapLog logFactory, QuorumPeer self, ZKDatabase zkDb) throws IOException {
super(logFactory, self.tickTime, self.minSessionTimeout, self.maxSessionTimeout, zkDb, self);
-
- int divisor = self.getQuorumSize() > 2 ? self.getQuorumSize() - 1 : 1;
- globalOutstandingLimit = Integer.getInteger(GLOBAL_OUTSTANDING_LIMIT, 1000) / divisor;
- LOG.info("Override {} to {}", GLOBAL_OUTSTANDING_LIMIT, globalOutstandingLimit);
}
public Leader getLeader(){
@@ -107,6 +103,14 @@ public class LeaderZooKeeperServer extends QuorumZooKeeperServer {
}
@Override
+ public int getGlobalOutstandingLimit() {
+ int divisor = self.getQuorumSize() > 2 ? self.getQuorumSize() - 1 : 1;
+ int globalOutstandingLimit = super.getGlobalOutstandingLimit() / divisor;
+ LOG.info("Override {} to {}", GLOBAL_OUTSTANDING_LIMIT, globalOutstandingLimit);
+ return globalOutstandingLimit;
+ }
+
+ @Override
public void createSessionTracker() {
sessionTracker = new LeaderSessionTracker(
this, getZKDatabase().getSessionWithTimeOuts(),