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 2015/09/15 20:44:57 UTC
incubator-geode git commit: GEODE-77 fixing unit test config problems
and a failure in colocated membership manager testing
Repository: incubator-geode
Updated Branches:
refs/heads/feature/GEODE-77 fc2881710 -> 9cd82c7b9
GEODE-77 fixing unit test config problems and a failure in colocated membership manager testing
Project: http://git-wip-us.apache.org/repos/asf/incubator-geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-geode/commit/9cd82c7b
Tree: http://git-wip-us.apache.org/repos/asf/incubator-geode/tree/9cd82c7b
Diff: http://git-wip-us.apache.org/repos/asf/incubator-geode/diff/9cd82c7b
Branch: refs/heads/feature/GEODE-77
Commit: 9cd82c7b935da9f040b2215b6678a080eb9d5c2d
Parents: fc28817
Author: Bruce Schuchardt <bs...@pivotal.io>
Authored: Tue Sep 15 11:44:42 2015 -0700
Committer: Bruce Schuchardt <bs...@pivotal.io>
Committed: Tue Sep 15 11:44:42 2015 -0700
----------------------------------------------------------------------
.../internal/membership/gms/NetLocator.java | 3 +-
.../internal/membership/gms/Services.java | 11 ++-
.../membership/gms/locator/GMSLocator.java | 6 +-
.../gemfire/cache30/BridgeTestCase.java | 4 +-
.../internal/DistributionManagerDUnitTest.java | 75 --------------------
.../membership/MembershipJUnitTest.java | 2 +
.../gms/locator/GMSLocatorJUnitTest.java | 7 +-
7 files changed, 25 insertions(+), 83 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/9cd82c7b/gemfire-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/NetLocator.java
----------------------------------------------------------------------
diff --git a/gemfire-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/NetLocator.java b/gemfire-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/NetLocator.java
index 10339c6..92342c1 100755
--- a/gemfire-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/NetLocator.java
+++ b/gemfire-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/NetLocator.java
@@ -9,7 +9,8 @@ public interface NetLocator extends TcpHandler {
* This must be called after booting the membership manager so
* that the locator can use its services
* @param mgr
+ * @return true if the membership manager was accepted
*/
- public void setMembershipManager(MembershipManager mgr);
+ public boolean setMembershipManager(MembershipManager mgr);
}
http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/9cd82c7b/gemfire-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/Services.java
----------------------------------------------------------------------
diff --git a/gemfire-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/Services.java b/gemfire-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/Services.java
index 4cacfc6..cdbe2aa 100755
--- a/gemfire-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/Services.java
+++ b/gemfire-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/Services.java
@@ -48,6 +48,7 @@ public class Services {
final private DMStats stats;
final private Stopper cancelCriterion;
private volatile boolean stopping;
+ private volatile boolean stopped;
private InternalLogWriter logWriter;
private InternalLogWriter securityLogWriter;
@@ -77,6 +78,10 @@ public class Services {
return this.timer;
}
+ public boolean isStopped() {
+ return this.stopped;
+ }
+
public Services(
@@ -106,8 +111,9 @@ public class Services {
this.healthMon.init(this);
InternalLocator l = (InternalLocator)com.gemstone.gemfire.distributed.Locator.getLocator();
if (l != null && l.getLocatorHandler() != null) {
- l.getLocatorHandler().setMembershipManager((MembershipManager)this.manager);
- this.locator = (Locator)l.getLocatorHandler();
+ if (l.getLocatorHandler().setMembershipManager((MembershipManager)this.manager)) {
+ this.locator = (Locator)l.getLocatorHandler();
+ }
}
}
@@ -179,6 +185,7 @@ public class Services {
this.messenger.stop();
this.manager.stop();
this.cancelCriterion.cancel("Membership services are shut down");
+ stopped = true;
}
public static void setLogWriter(InternalLogWriter writer) {
http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/9cd82c7b/gemfire-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/locator/GMSLocator.java
----------------------------------------------------------------------
diff --git a/gemfire-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/locator/GMSLocator.java b/gemfire-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/locator/GMSLocator.java
index 7298b86..e0f0a4a 100755
--- a/gemfire-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/locator/GMSLocator.java
+++ b/gemfire-core/src/main/java/com/gemstone/gemfire/distributed/internal/membership/gms/locator/GMSLocator.java
@@ -87,8 +87,8 @@ public class GMSLocator implements Locator, NetLocator {
}
@Override
- public void setMembershipManager(MembershipManager mgr) {
- if (services == null) {
+ public boolean setMembershipManager(MembershipManager mgr) {
+ if (services == null || services.isStopped()) {
logger.info("Peer locator is connecting to local membership services");
services = ((GMSMembershipManager)mgr).getServices();
services.setLocator(this);
@@ -96,7 +96,9 @@ public class GMSLocator implements Locator, NetLocator {
if (newView != null) {
this.view = newView;
}
+ return true;
}
+ return false;
}
@Override
http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/9cd82c7b/gemfire-core/src/test/java/com/gemstone/gemfire/cache30/BridgeTestCase.java
----------------------------------------------------------------------
diff --git a/gemfire-core/src/test/java/com/gemstone/gemfire/cache30/BridgeTestCase.java b/gemfire-core/src/test/java/com/gemstone/gemfire/cache30/BridgeTestCase.java
index 745629e..c9aabb7 100644
--- a/gemfire-core/src/test/java/com/gemstone/gemfire/cache30/BridgeTestCase.java
+++ b/gemfire-core/src/test/java/com/gemstone/gemfire/cache30/BridgeTestCase.java
@@ -277,7 +277,7 @@ public class BridgeTestCase extends CacheTestCase {
WaitCriterion w = new WaitCriterion() {
public String description() {
- return "bridge never finished connecting";
+ return "bridge never finished connecting: " + system.getMemberId();
}
public boolean done() {
@@ -288,7 +288,7 @@ public class BridgeTestCase extends CacheTestCase {
}
};
- int waitMillis = 5000;
+ int waitMillis = 10000;
int interval = 100;
boolean throwException = true;
waitForCriterion(w, waitMillis, interval, throwException);
http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/9cd82c7b/gemfire-core/src/test/java/com/gemstone/gemfire/distributed/internal/DistributionManagerDUnitTest.java
----------------------------------------------------------------------
diff --git a/gemfire-core/src/test/java/com/gemstone/gemfire/distributed/internal/DistributionManagerDUnitTest.java b/gemfire-core/src/test/java/com/gemstone/gemfire/distributed/internal/DistributionManagerDUnitTest.java
index 5d7e9a0..574f3f1 100644
--- a/gemfire-core/src/test/java/com/gemstone/gemfire/distributed/internal/DistributionManagerDUnitTest.java
+++ b/gemfire-core/src/test/java/com/gemstone/gemfire/distributed/internal/DistributionManagerDUnitTest.java
@@ -235,81 +235,6 @@ public class DistributionManagerDUnitTest extends DistributedTestCase {
}
/**
- * Test the verifyMember interface of the membership manager
- **/
- public void testVerifyMember() {
- VM memberVM = Host.getHost(0).getVM(1);
-
- int port1 = AvailablePort.getRandomAvailablePort(AvailablePort.SOCKET);
-
- final String locators = getIPLiteral() + "[" + port1 + "]";
- final Properties properties = new Properties();
- properties.put(DistributionConfig.MCAST_PORT_NAME, "0");
- properties.put(DistributionConfig.START_LOCATOR_NAME, locators);
- properties.put(DistributionConfig.DISABLE_AUTO_RECONNECT_NAME, "true");
- properties.put(DistributionConfig.LOG_LEVEL_NAME, getDUnitLogLevel());
-
- system = (InternalDistributedSystem)DistributedSystem.connect(properties);
- MembershipManager mgr = MembershipManagerHelper.getMembershipManager(system);
-
- try {
- properties.remove(DistributionConfig.START_LOCATOR_NAME);
- properties.put(DistributionConfig.LOCATORS_NAME, locators);
- properties.put(DistributionConfig.NAME_NAME, "John Doe");
- DistributedMember id = (DistributedMember)memberVM.invoke(new SerializableCallable() {
- public Object call() {
- DistributedSystem system = DistributedSystem.connect(properties);
- return system.getDistributedMember();
- }
- });
-
- assertTrue(id.getName().equals("John Doe"));
-
- getLogWriter().info("test is setting slow view casting hook");
- // a new view won't be installed for 20 seconds
- fail("slow view casting must be implemented for the jgroups replacement");
-// GMS.TEST_HOOK_SLOW_VIEW_CASTING=20;
-
- // show we can reconnect even though the old ID for this member is still
- // in the membership view. Disconnecting will shut down the old DistributedSystem
- // in memberVM and while the old ID is still in the view
- memberVM.invoke(new SerializableRunnable("disconnect and reconnect") {
- public void run() {
- DistributedSystem sys = InternalDistributedSystem.getAnyInstance();
- DistributedMember oldID = sys.getDistributedMember();
- crashDistributedSystem(sys);
- sys = DistributedSystem.connect(properties);
- getLogWriter().info("initial view in new system is " +
- MembershipManagerHelper.getMembershipManager(sys).getView());
- // the old ID should be in the new view
- if (MembershipManagerHelper.getMembershipManager(sys)
- .memberExists((InternalDistributedMember)oldID)) {
- // the old DistributedSystem should not be reachable
- assertFalse(MembershipManagerHelper.getMembershipManager(sys)
- .verifyMember(oldID, "old member has disconnected for this test"));
- }
- }
- });
- }
- finally {
- //TODO
-// GMS.TEST_HOOK_SLOW_VIEW_CASTING = 0;
-
- memberVM.invoke(new SerializableRunnable("disconnect") {
- public void run() {
- DistributedSystem sys = InternalDistributedSystem.getAnyInstance();
- if (sys != null) {
- sys.disconnect();
- }
- }
- });
- if (system != null && system.isConnected()) {
- system.disconnect();
- }
- }
- }
-
- /**
* vm1 stores its cache in this static variable in
* testAckSeverAllertThreshold
*/
http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/9cd82c7b/gemfire-core/src/test/java/com/gemstone/gemfire/distributed/internal/membership/MembershipJUnitTest.java
----------------------------------------------------------------------
diff --git a/gemfire-core/src/test/java/com/gemstone/gemfire/distributed/internal/membership/MembershipJUnitTest.java b/gemfire-core/src/test/java/com/gemstone/gemfire/distributed/internal/membership/MembershipJUnitTest.java
index c1a1070..d261e66 100755
--- a/gemfire-core/src/test/java/com/gemstone/gemfire/distributed/internal/membership/MembershipJUnitTest.java
+++ b/gemfire-core/src/test/java/com/gemstone/gemfire/distributed/internal/membership/MembershipJUnitTest.java
@@ -169,6 +169,7 @@ public class MembershipJUnitTest extends TestCase {
System.setProperty(GMSJoinLeave.BYPASS_DISCOVERY, "true");
DistributedMembershipListener listener1 = mock(DistributedMembershipListener.class);
DMStats stats1 = mock(DMStats.class);
+ System.out.println("creating 1st membership manager");
m1 = MemberFactory.newMembershipManager(listener1, config, transport, stats1);
} finally {
System.getProperties().remove(GMSJoinLeave.BYPASS_DISCOVERY);
@@ -177,6 +178,7 @@ public class MembershipJUnitTest extends TestCase {
// start the second membership manager
DistributedMembershipListener listener2 = mock(DistributedMembershipListener.class);
DMStats stats2 = mock(DMStats.class);
+ System.out.println("creating 2nd membership manager");
m2 = MemberFactory.newMembershipManager(listener2, config, transport, stats2);
assert m2.getView().size() == 2 : "view = " + m2.getView();
http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/9cd82c7b/gemfire-core/src/test/java/com/gemstone/gemfire/distributed/internal/membership/gms/locator/GMSLocatorJUnitTest.java
----------------------------------------------------------------------
diff --git a/gemfire-core/src/test/java/com/gemstone/gemfire/distributed/internal/membership/gms/locator/GMSLocatorJUnitTest.java b/gemfire-core/src/test/java/com/gemstone/gemfire/distributed/internal/membership/gms/locator/GMSLocatorJUnitTest.java
index 7e98866..f33dbe0 100644
--- a/gemfire-core/src/test/java/com/gemstone/gemfire/distributed/internal/membership/gms/locator/GMSLocatorJUnitTest.java
+++ b/gemfire-core/src/test/java/com/gemstone/gemfire/distributed/internal/membership/gms/locator/GMSLocatorJUnitTest.java
@@ -92,7 +92,12 @@ public class GMSLocatorJUnitTest {
public void testRecoverFromFileWithWrongOrdinal() throws Exception {
// add 1 to ordinal to make it wrong
populateStateFile(tempStateFile, GMSLocator.LOCATOR_FILE_STAMP, Version.CURRENT_ORDINAL + 1, 1);
- assertFalse(locator.recoverFromFile(tempStateFile));
+ try {
+ locator.recoverFromFile(tempStateFile);
+ fail("expected an InternalGemFireException to be thrown");
+ } catch (InternalGemFireException e) {
+ // success
+ }
}
@Test