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/15 19:39:20 UTC

[42/45] incubator-geode git commit: GEODE-1049 Added wait criteria to get internalDistributedSystem instance.

GEODE-1049 Added wait criteria to get internalDistributedSystem instance.

Test is looking for InternalDistributedSystem Instance, but it access before
it get initialize. Thus added waiting criteria for that.


Project: http://git-wip-us.apache.org/repos/asf/incubator-geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-geode/commit/2e00d5d6
Tree: http://git-wip-us.apache.org/repos/asf/incubator-geode/tree/2e00d5d6
Diff: http://git-wip-us.apache.org/repos/asf/incubator-geode/diff/2e00d5d6

Branch: refs/heads/feature/GEODE-1050
Commit: 2e00d5d61730c11a65d21189bd9b52c9ef058632
Parents: c5d8ea7
Author: Hitesh Khamesra <hk...@pivotal.io>
Authored: Fri Mar 11 17:18:18 2016 -0800
Committer: Hitesh Khamesra <hk...@pivotal.io>
Committed: Tue Mar 15 10:07:48 2016 -0700

----------------------------------------------------------------------
 .../gms/membership/GMSJoinLeaveTestHelper.java  | 24 ++++++++++++++++++++
 1 file changed, 24 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/2e00d5d6/geode-core/src/test/java/com/gemstone/gemfire/distributed/internal/membership/gms/membership/GMSJoinLeaveTestHelper.java
----------------------------------------------------------------------
diff --git a/geode-core/src/test/java/com/gemstone/gemfire/distributed/internal/membership/gms/membership/GMSJoinLeaveTestHelper.java b/geode-core/src/test/java/com/gemstone/gemfire/distributed/internal/membership/gms/membership/GMSJoinLeaveTestHelper.java
index 493c625..17409a4 100644
--- a/geode-core/src/test/java/com/gemstone/gemfire/distributed/internal/membership/gms/membership/GMSJoinLeaveTestHelper.java
+++ b/geode-core/src/test/java/com/gemstone/gemfire/distributed/internal/membership/gms/membership/GMSJoinLeaveTestHelper.java
@@ -21,6 +21,8 @@ import com.gemstone.gemfire.distributed.internal.DM;
 import com.gemstone.gemfire.distributed.internal.InternalDistributedSystem;
 import com.gemstone.gemfire.distributed.internal.membership.gms.Services;
 import com.gemstone.gemfire.distributed.internal.membership.gms.mgr.GMSMembershipManager;
+import com.gemstone.gemfire.test.dunit.Wait;
+import com.gemstone.gemfire.test.dunit.WaitCriterion;
 
 public class GMSJoinLeaveTestHelper {
 
@@ -43,6 +45,24 @@ public class GMSJoinLeaveTestHelper {
     throw new RuntimeException("This should not have happened. There should be a JoinLeave for every DS");
   }
 
+  private static void waitCriterion() {
+    WaitCriterion waitCriterion = new WaitCriterion() {
+      public boolean done() {
+        try {
+          return getIDS() != null;
+        } catch (Exception e) {
+          e.printStackTrace();
+        }
+        return false; // NOTREACHED
+      }
+
+      public String description() {
+        return "Distributed system is null";
+      }
+    };
+    Wait.waitForCriterion(waitCriterion, 10 * 1000, 200, true);
+  }
+  
   private static GMSJoinLeave getGmsJoinLeave() {
     InternalDistributedSystem distributedSystem = getInternalDistributedSystem();
     DM dm = distributedSystem.getDM();
@@ -56,6 +76,10 @@ public class GMSJoinLeaveTestHelper {
   }
 
   private static InternalDistributedSystem getInternalDistributedSystem() {
+    waitCriterion();
+    return getIDS();
+  }
+  private static InternalDistributedSystem getIDS() {
     InternalDistributedSystem distributedSystem = InternalDistributedSystem.getAnyInstance();
     if (distributedSystem == null) {
       Locator locator = Locator.getLocator();