You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@geode.apache.org by bs...@apache.org on 2019/02/15 17:03:11 UTC
[geode] branch feature/GEODE-6369 updated: fixing an uncaught
exception in location services restart thread
This is an automated email from the ASF dual-hosted git repository.
bschuchardt pushed a commit to branch feature/GEODE-6369
in repository https://gitbox.apache.org/repos/asf/geode.git
The following commit(s) were added to refs/heads/feature/GEODE-6369 by this push:
new 1b8cebf fixing an uncaught exception in location services restart thread
1b8cebf is described below
commit 1b8cebfef2eaf3d949798d4a49451416fdd38422
Author: Bruce Schuchardt <bs...@pivotal.io>
AuthorDate: Fri Feb 15 09:02:14 2019 -0800
fixing an uncaught exception in location services restart thread
---
.../ReconnectWithClusterConfigurationDUnitTest.java | 4 +++-
.../geode/distributed/internal/InternalLocator.java | 16 ++++++++++++++--
2 files changed, 17 insertions(+), 3 deletions(-)
diff --git a/geode-core/src/distributedTest/java/org/apache/geode/cache30/ReconnectWithClusterConfigurationDUnitTest.java b/geode-core/src/distributedTest/java/org/apache/geode/cache30/ReconnectWithClusterConfigurationDUnitTest.java
index e8ea800..964383a 100644
--- a/geode-core/src/distributedTest/java/org/apache/geode/cache30/ReconnectWithClusterConfigurationDUnitTest.java
+++ b/geode-core/src/distributedTest/java/org/apache/geode/cache30/ReconnectWithClusterConfigurationDUnitTest.java
@@ -17,6 +17,7 @@ package org.apache.geode.cache30;
import static org.apache.geode.distributed.ConfigurationProperties.DISABLE_AUTO_RECONNECT;
import static org.apache.geode.distributed.ConfigurationProperties.ENABLE_CLUSTER_CONFIGURATION;
import static org.apache.geode.distributed.ConfigurationProperties.ENABLE_NETWORK_PARTITION_DETECTION;
+import static org.apache.geode.distributed.ConfigurationProperties.HTTP_SERVICE_PORT;
import static org.apache.geode.distributed.ConfigurationProperties.LOCATORS;
import static org.apache.geode.distributed.ConfigurationProperties.LOG_LEVEL;
import static org.apache.geode.distributed.ConfigurationProperties.MAX_WAIT_TIME_RECONNECT;
@@ -126,11 +127,12 @@ public class ReconnectWithClusterConfigurationDUnitTest implements Serializable
public Properties getDistributedSystemProperties() {
dsProperties = new Properties();
- dsProperties.put(MAX_WAIT_TIME_RECONNECT, "20000");
+ dsProperties.put(MAX_WAIT_TIME_RECONNECT, "" + (5000 * NUM_VMS));
dsProperties.put(ENABLE_NETWORK_PARTITION_DETECTION, "true");
dsProperties.put(DISABLE_AUTO_RECONNECT, "false");
dsProperties.put(ENABLE_CLUSTER_CONFIGURATION, "true");
dsProperties.put(USE_CLUSTER_CONFIGURATION, "true");
+ dsProperties.put(HTTP_SERVICE_PORT, "0");
StringBuilder stringBuilder = new StringBuilder();
stringBuilder.append("localHost[")
.append(locatorPorts[0])
diff --git a/geode-core/src/main/java/org/apache/geode/distributed/internal/InternalLocator.java b/geode-core/src/main/java/org/apache/geode/distributed/internal/InternalLocator.java
index 2d1d401..736da0a 100644
--- a/geode-core/src/main/java/org/apache/geode/distributed/internal/InternalLocator.java
+++ b/geode-core/src/main/java/org/apache/geode/distributed/internal/InternalLocator.java
@@ -1051,7 +1051,12 @@ public class InternalLocator extends Locator implements ConnectListener, LogConf
}
this.stoppedForReconnect = false;
}
- restartWithDS(newSystem, GemFireCacheImpl.getInstance());
+ try {
+ restartWithDS(newSystem, GemFireCacheImpl.getInstance());
+ } catch (CancelException e) {
+ this.stoppedForReconnect = true;
+ return false;
+ }
setLocator(this);
restarted = true;
}
@@ -1093,7 +1098,14 @@ public class InternalLocator extends Locator implements ConnectListener, LogConf
this.myDs.setDependentLocator(this);
logger.info("Locator restart: initializing TcpServer");
- this.server.restarting(newSystem, newCache, this.configurationPersistenceService);
+ try {
+ this.server.restarting(newSystem, newCache, this.configurationPersistenceService);
+ } catch (CancelException e) {
+ this.myDs = null;
+ this.myCache = null;
+ logger.info("Locator restart: attempt to restart location services failed", e);
+ throw e;
+ }
if (this.productUseLog.isClosed()) {
this.productUseLog.reopen();
}