You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@geode.apache.org by kl...@apache.org on 2016/03/01 01:09:34 UTC
[25/34] incubator-geode git commit: GEODE-870: Handling multiple
concurrent locator restarts. Elder locator nomination
GEODE-870: Handling multiple concurrent locator restarts. Elder locator nomination
Project: http://git-wip-us.apache.org/repos/asf/incubator-geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-geode/commit/1bf15032
Tree: http://git-wip-us.apache.org/repos/asf/incubator-geode/tree/1bf15032
Diff: http://git-wip-us.apache.org/repos/asf/incubator-geode/diff/1bf15032
Branch: refs/heads/feature/GEODE-949-2
Commit: 1bf15032a4ea16a9d18ea989dac46e6f5b0dbeaf
Parents: 594cf54
Author: Udo Kohlmeyer <uk...@pivotal.io>
Authored: Wed Feb 10 12:29:02 2016 +1100
Committer: Udo Kohlmeyer <uk...@pivotal.io>
Committed: Mon Feb 29 16:36:08 2016 +1100
----------------------------------------------------------------------
.../membership/gms/membership/GMSJoinLeave.java | 18 ++++++++++++------
1 file changed, 12 insertions(+), 6 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/1bf15032/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/membership/GMSJoinLeave.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/membership/GMSJoinLeave.java b/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/membership/GMSJoinLeave.java
index b246344..56b644c 100755
--- a/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/membership/GMSJoinLeave.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/membership/GMSJoinLeave.java
@@ -195,24 +195,24 @@ public class GMSJoinLeave implements JoinLeave, MessageHandler {
}
SearchState state = searchState;
-
- long locatorWaitTime = ((long)services.getConfig().getLocatorWaitTime()) * 1000L;
+
+ long locatorWaitTime = ((long) services.getConfig().getLocatorWaitTime()) * 1000L;
long timeout = services.getConfig().getJoinTimeout();
logger.debug("join timeout is set to {}", timeout);
- long retrySleep = JOIN_RETRY_SLEEP;
+ long retrySleep = JOIN_RETRY_SLEEP;
long startTime = System.currentTimeMillis();
long locatorGiveUpTime = startTime + locatorWaitTime;
long giveupTime = startTime + timeout;
- for (int tries=0; !this.isJoined && !this.isStopping; tries++) {
+ for (int tries = 0; !this.isJoined && !this.isStopping; tries++) {
logger.debug("searching for the membership coordinator");
boolean found = findCoordinator();
if (found) {
logger.debug("found possible coordinator {}", state.possibleCoordinator);
if (localAddress.getNetMember().preferredForCoordinator()
&& state.possibleCoordinator.equals(this.localAddress)) {
- if (tries > 2 || System.currentTimeMillis() < giveupTime ) {
- synchronized(viewInstallationLock) {
+ if (tries > 2 || System.currentTimeMillis() < giveupTime) {
+ synchronized (viewInstallationLock) {
becomeCoordinator();
}
return true;
@@ -713,6 +713,8 @@ public class GMSJoinLeave implements JoinLeave, MessageHandler {
if (preparing) {
this.preparedView = view;
} else {
+ //Added a check in the view processor to turn off the ViewCreator
+ //if another server is the coordinator - GEODE-870
if(!localAddress.equals(view.getCoordinator()) && getViewCreator() != null)
{
stopCoordinatorServices();
@@ -1075,12 +1077,16 @@ public class GMSJoinLeave implements JoinLeave, MessageHandler {
/**
* for testing, do not use in any other case as it is not thread safe
+ *
+ * @param req
*/
JoinResponseMessage[] getJoinResponseMessage() {
return joinResponse;
}
+
/***
* for testing purpose
+ *
* @param jrm
*/
void setJoinResponseMessage(JoinResponseMessage jrm) {