You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@geode.apache.org by je...@apache.org on 2017/10/26 17:33:14 UTC

[geode] branch develop updated: GEODE-3914: Allow gfsh test rules to use more than 4 VMs (#982)

This is an automated email from the ASF dual-hosted git repository.

jensdeppe pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/geode.git


The following commit(s) were added to refs/heads/develop by this push:
     new 9a30e8a  GEODE-3914: Allow gfsh test rules to use more than 4 VMs (#982)
9a30e8a is described below

commit 9a30e8ab5386606e7f8cb99d0edfdb388b846bc9
Author: Jens Deppe <jd...@pivotal.io>
AuthorDate: Thu Oct 26 10:33:12 2017 -0700

    GEODE-3914: Allow gfsh test rules to use more than 4 VMs (#982)
---
 .../test/dunit/rules/LocatorServerStartupRule.java | 29 ++++++++++++++--------
 1 file changed, 18 insertions(+), 11 deletions(-)

diff --git a/geode-core/src/test/java/org/apache/geode/test/dunit/rules/LocatorServerStartupRule.java b/geode-core/src/test/java/org/apache/geode/test/dunit/rules/LocatorServerStartupRule.java
index 0a8d4ec..45184be 100644
--- a/geode-core/src/test/java/org/apache/geode/test/dunit/rules/LocatorServerStartupRule.java
+++ b/geode-core/src/test/java/org/apache/geode/test/dunit/rules/LocatorServerStartupRule.java
@@ -23,6 +23,7 @@ import static org.apache.geode.test.dunit.Host.getHost;
 import java.io.File;
 import java.io.IOException;
 import java.io.Serializable;
+import java.util.ArrayList;
 import java.util.Properties;
 import java.util.stream.IntStream;
 
@@ -62,7 +63,7 @@ public class LocatorServerStartupRule extends ExternalResource implements Serial
       new DistributedRestoreSystemProperties();
 
   private TemporaryFolder tempWorkingDir;
-  private MemberVM[] members;
+  private ArrayList<MemberVM> members;
 
   private boolean logFile = false;
 
@@ -102,7 +103,7 @@ public class LocatorServerStartupRule extends ExternalResource implements Serial
     if (useTempWorkingDir()) {
       tempWorkingDir.create();
     }
-    members = new MemberVM[DUnitLauncher.NUM_VMS];
+    members = new ArrayList<>();
   }
 
   @Override
@@ -111,7 +112,7 @@ public class LocatorServerStartupRule extends ExternalResource implements Serial
       DUnitLauncher.closeAndCheckForSuspects();
     } finally {
       MemberStarterRule.disconnectDSIfAny();
-      IntStream.range(0, DUnitLauncher.NUM_VMS).forEach(this::stopVM);
+      IntStream.range(0, members.size()).forEach(this::stopVM);
 
       if (useTempWorkingDir()) {
         tempWorkingDir.delete();
@@ -152,8 +153,16 @@ public class LocatorServerStartupRule extends ExternalResource implements Serial
       locatorStarter.before();
       return locatorStarter;
     });
-    members[index] = new MemberVM(locator, locatorVM, useTempWorkingDir());
-    return members[index];
+
+    return setMember(index, new MemberVM(locator, locatorVM, useTempWorkingDir()));
+  }
+
+  private MemberVM setMember(int index, MemberVM element) {
+    while (members.size() <= index) {
+      members.add(null);
+    }
+    members.set(index, element);
+    return members.get(index);
   }
 
   public MemberVM startServerVM(int index) throws IOException {
@@ -194,8 +203,7 @@ public class LocatorServerStartupRule extends ExternalResource implements Serial
       serverStarter.before();
       return serverStarter;
     });
-    members[index] = new MemberVM(server, serverVM, useTempWorkingDir());
-    return members[index];
+    return setMember(index, new MemberVM(server, serverVM, useTempWorkingDir()));
   }
 
   public MemberVM startServerAsJmxManager(int index) throws IOException {
@@ -235,12 +243,11 @@ public class LocatorServerStartupRule extends ExternalResource implements Serial
       serverStarter.before();
       return serverStarter;
     });
-    members[index] = new MemberVM(server, serverVM, useTempWorkingDir());
-    return members[index];
+    return setMember(index, new MemberVM(server, serverVM, useTempWorkingDir()));
   }
 
   public void stopVM(int index) {
-    MemberVM member = members[index];
+    MemberVM member = members.get(index);
     // user has started a server/locator in this VM
     if (member != null) {
       member.stopMember();
@@ -255,7 +262,7 @@ public class LocatorServerStartupRule extends ExternalResource implements Serial
    * Returns the {@link Member} running inside the VM with the specified {@code index}
    */
   public MemberVM getMember(int index) {
-    return members[index];
+    return members.get(index);
   }
 
   public VM getVM(int index) {

-- 
To stop receiving notification emails like this one, please contact
['"commits@geode.apache.org" <co...@geode.apache.org>'].