You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@geode.apache.org by ab...@apache.org on 2017/07/17 18:06:57 UTC
[48/58] [abbrv] geode git commit: GEODE-3139 remove current artifacts
from classpath of backward-compatibility tests
GEODE-3139 remove current artifacts from classpath of backward-compatibility tests
This removes the geode-core product artifacts from old-version JVM classpaths
for backward-compatibility testing. I had to change the distributed test
framework to not refer to InternalClientCache but surprisingly that caused
no compilation failures.
Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/84bf7394
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/84bf7394
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/84bf7394
Branch: refs/heads/master
Commit: 84bf7394aaa13cc2da4b20b33c1242348b69f7ea
Parents: e479ed5
Author: Bruce Schuchardt <bs...@pivotal.io>
Authored: Fri Jun 30 08:49:05 2017 -0700
Committer: Bruce Schuchardt <bs...@pivotal.io>
Committed: Fri Jun 30 09:59:54 2017 -0700
----------------------------------------------------------------------
.../cache/internal/JUnit3CacheTestCase.java | 2 +-
.../cache/internal/JUnit4CacheTestCase.java | 2 +-
.../geode/test/dunit/standalone/ChildVM.java | 4 ++-
.../test/dunit/standalone/ProcessManager.java | 37 ++++++++++++++++----
4 files changed, 35 insertions(+), 10 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/geode/blob/84bf7394/geode-core/src/test/java/org/apache/geode/test/dunit/cache/internal/JUnit3CacheTestCase.java
----------------------------------------------------------------------
diff --git a/geode-core/src/test/java/org/apache/geode/test/dunit/cache/internal/JUnit3CacheTestCase.java b/geode-core/src/test/java/org/apache/geode/test/dunit/cache/internal/JUnit3CacheTestCase.java
index 917361f..73d4042 100644
--- a/geode-core/src/test/java/org/apache/geode/test/dunit/cache/internal/JUnit3CacheTestCase.java
+++ b/geode-core/src/test/java/org/apache/geode/test/dunit/cache/internal/JUnit3CacheTestCase.java
@@ -101,7 +101,7 @@ public abstract class JUnit3CacheTestCase extends JUnit3DistributedTestCase
*
* @since GemFire 6.5
*/
- public final InternalClientCache getClientCache(final ClientCacheFactory factory) {
+ public final ClientCache getClientCache(final ClientCacheFactory factory) {
return delegate.getClientCache(factory);
}
http://git-wip-us.apache.org/repos/asf/geode/blob/84bf7394/geode-core/src/test/java/org/apache/geode/test/dunit/cache/internal/JUnit4CacheTestCase.java
----------------------------------------------------------------------
diff --git a/geode-core/src/test/java/org/apache/geode/test/dunit/cache/internal/JUnit4CacheTestCase.java b/geode-core/src/test/java/org/apache/geode/test/dunit/cache/internal/JUnit4CacheTestCase.java
index 8629749..bf77be3 100644
--- a/geode-core/src/test/java/org/apache/geode/test/dunit/cache/internal/JUnit4CacheTestCase.java
+++ b/geode-core/src/test/java/org/apache/geode/test/dunit/cache/internal/JUnit4CacheTestCase.java
@@ -290,7 +290,7 @@ public abstract class JUnit4CacheTestCase extends JUnit4DistributedTestCase
*
* @since GemFire 6.5
*/
- public final InternalClientCache getClientCache(final ClientCacheFactory factory) {
+ public final ClientCache getClientCache(final ClientCacheFactory factory) {
synchronized (JUnit4CacheTestCase.class) {
final GemFireCacheImpl gemFireCache = GemFireCacheImpl.getInstance();
if (gemFireCache != null && !gemFireCache.isClosed()
http://git-wip-us.apache.org/repos/asf/geode/blob/84bf7394/geode-core/src/test/java/org/apache/geode/test/dunit/standalone/ChildVM.java
----------------------------------------------------------------------
diff --git a/geode-core/src/test/java/org/apache/geode/test/dunit/standalone/ChildVM.java b/geode-core/src/test/java/org/apache/geode/test/dunit/standalone/ChildVM.java
index 634e09f..d54f3d0 100644
--- a/geode-core/src/test/java/org/apache/geode/test/dunit/standalone/ChildVM.java
+++ b/geode-core/src/test/java/org/apache/geode/test/dunit/standalone/ChildVM.java
@@ -17,6 +17,7 @@ package org.apache.geode.test.dunit.standalone;
import java.rmi.Naming;
import org.apache.geode.internal.OSProcess;
+import org.apache.geode.internal.Version;
import org.apache.geode.internal.logging.LogService;
import org.apache.geode.test.dunit.VM;
import org.apache.geode.test.dunit.internal.JUnit4DistributedTestCase;
@@ -48,7 +49,8 @@ public class ChildVM {
int pid = OSProcess.getId();
logger.info("VM" + vmNum + " is launching" + (pid > 0 ? " with PID " + pid : ""));
if (!VersionManager.isCurrentVersion(geodeVersion)) {
- logger.info("This VM is using Geode version {}", geodeVersion);
+ logger.info("This VM is using Geode version {}. Version.CURRENT is {}", geodeVersion,
+ Version.CURRENT);
}
MasterRemote holder = (MasterRemote) Naming
.lookup("//localhost:" + namingPort + "/" + DUnitLauncher.MASTER_PARAM);
http://git-wip-us.apache.org/repos/asf/geode/blob/84bf7394/geode-core/src/test/java/org/apache/geode/test/dunit/standalone/ProcessManager.java
----------------------------------------------------------------------
diff --git a/geode-core/src/test/java/org/apache/geode/test/dunit/standalone/ProcessManager.java b/geode-core/src/test/java/org/apache/geode/test/dunit/standalone/ProcessManager.java
index 21b79e8..9e62484 100755
--- a/geode-core/src/test/java/org/apache/geode/test/dunit/standalone/ProcessManager.java
+++ b/geode-core/src/test/java/org/apache/geode/test/dunit/standalone/ProcessManager.java
@@ -172,11 +172,32 @@ public class ProcessManager {
private String[] buildJavaCommand(int vmNum, int namingPort, String version) {
String cmd = System.getProperty("java.home") + File.separator + "bin" + File.separator + "java";
String dunitClasspath = System.getProperty("java.class.path");
+ String separator = File.separator;
String classPath;
- if (!VersionManager.isCurrentVersion(version)) {
- classPath = versionManager.getClasspath(version) + File.pathSeparator + dunitClasspath;
- } else {
+ if (VersionManager.isCurrentVersion(version)) {
classPath = dunitClasspath;
+ } else {
+ // remove current-version product classes and resources from the classpath
+ String buildDir = separator + "geode-core" + separator + "build" + separator;
+
+ String mainClasses = buildDir + "classes" + separator + "main";
+ dunitClasspath = removeFromPath(dunitClasspath, mainClasses);
+
+ String mainResources = buildDir + "resources" + separator + "main";
+ dunitClasspath = removeFromPath(dunitClasspath, mainResources);
+
+ String generatedResources = buildDir + "generated-resources" + separator + "main";
+ dunitClasspath = removeFromPath(dunitClasspath, generatedResources);
+
+ buildDir = separator + "geode-common" + separator + "build" + separator + "classes"
+ + separator + "main";
+ dunitClasspath = removeFromPath(dunitClasspath, buildDir);
+
+ buildDir = separator + "geode-json" + separator + "build" + separator + "classes" + separator
+ + "main";
+ dunitClasspath = removeFromPath(dunitClasspath, buildDir);
+
+ classPath = versionManager.getClasspath(version) + File.pathSeparator + dunitClasspath;
}
// String tmpDir = System.getProperty("java.io.tmpdir");
@@ -192,7 +213,8 @@ public class ProcessManager {
ArrayList<String> cmds = new ArrayList<String>();
cmds.add(cmd);
cmds.add("-classpath");
- classPath = removeJREJars(classPath);
+ String jreLib = separator + "jre" + separator + "lib" + separator;
+ classPath = removeFromPath(classPath, jreLib);
cmds.add(classPath);
cmds.add("-D" + DUnitLauncher.RMI_PORT_PARAM + "=" + namingPort);
cmds.add("-D" + DUnitLauncher.VM_NUM_PARAM + "=" + vmNum);
@@ -208,6 +230,8 @@ public class ProcessManager {
// detection should create a separate locator that has it enabled
cmds.add(
"-D" + DistributionConfig.GEMFIRE_PREFIX + ENABLE_NETWORK_PARTITION_DETECTION + "=false");
+ cmds.add(
+ "-D" + DistributionConfig.GEMFIRE_PREFIX + "allow_old_members_to_join_for_testing=true");
}
cmds.add("-D" + LOG_LEVEL + "=" + DUnitLauncher.logLevel);
if (DUnitLauncher.LOG4J != null) {
@@ -233,13 +257,12 @@ public class ProcessManager {
return rst;
}
- private String removeJREJars(String classpath) {
+ private String removeFromPath(String classpath, String partialPath) {
String[] jars = classpath.split(File.pathSeparator);
StringBuilder sb = new StringBuilder(classpath.length());
- String jreLib = File.separator + "jre" + File.separator + "lib" + File.separator;
Boolean firstjar = true;
for (String jar : jars) {
- if (!jar.contains(jreLib)) {
+ if (!jar.contains(partialPath)) {
if (!firstjar) {
sb.append(File.pathSeparator);
}