----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/55688/#review162211 -----------------------------------------------------------
Ship it! Ship It! - Hitesh Khamesra On Jan. 18, 2017, 10:58 p.m., Bruce Schuchardt wrote: > > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > https://reviews.apache.org/r/55688/ > ----------------------------------------------------------- > > (Updated Jan. 18, 2017, 10:58 p.m.) > > > Review request for geode, Galen O'Sullivan, Hitesh Khamesra, and Udo > Kohlmeyer. > > > Bugs: GEODE-1965 > https://issues.apache.org/jira/browse/GEODE-1965 > > > Repository: geode > > > Description > ------- > > The DUnit distributed unit test framework is extended to have > Host.getHost(x).getVM(version, vmNumber), allowing you to launch a managed > JVM running the given version of Geode. > > A new class, VersionManager, loads the versions available to test against and > can be used to parameterize a class to run against all available versions or > to check whether a version is available for testing. I've modified a > client/server test to show how this is done. > > Available versions are created as Gradle source-sets in the new > geode-old-versions submodule. This submodule has no source files at present. > All test classes in geode-core and other modules are compiled against the > current version of Geode but are run with old versions when run in a VM > obtained through Host.getHost(x).getVM(oldVersion, vmNumber). Versions are > of the form "100", "110", "120" etc. The current version is > VersionManager.CURRENT_VERSION, which has the value "000". > > The DUnit Locator process has been modified to allow peers to start up using > old versions of Geode. This isn't normally allowed, but this modification > makes it easier to test peer-to-peer algorithms that have been modified or > peer-to-peer messages that have a new on-wire format. > > Test output looks like this: > > [vm_3] [info 2017/01/18 14:08:18.849 PST <Handshaker 0.0.0.0/0.0.0.0:26399 > Thread 1> tid=0x132] Initializing region > _gfe_non_durable_client_with_id_10.118.33.195(12164:loner):51232:7e979fb3(version:GFE > 9.0)_1_queue > > [vm_3] [info 2017/01/18 14:08:18.850 PST <Handshaker 0.0.0.0/0.0.0.0:26399 > Thread 1> tid=0x132] Initialization of region > _gfe_non_durable_client_with_id_10.118.33.195(12164:loner):51232:7e979fb3(version:GFE > 9.0)_1_queue completed > > [vm_3] [info 2017/01/18 14:08:18.851 PST <Handshaker 0.0.0.0/0.0.0.0:26399 > Thread 1> tid=0x132] Entry expiry tasks disabled because the queue became > primary. Old messageTimeToLive was: 180 > > [vm_1_v100] [info 2017/01/18 14:08:18.852 PST <RMI TCP > Connection(1)-10.118.33.195> tid=0x14] Pool ClientServerMiscDUnitTestPool > started with multiuser-authentication=false > > [vm_1_v100] [info 2017/01/18 14:08:18.855 PST <Cache Client Updater Thread > on PIVOTAL-1127(17212)<v64>:32771(version:UNKNOWN[ordinal=50]) port 26399> > tid=0x2b] Cache Client Updater Thread on > PIVOTAL-1127(17212)<v64>:32771(version:UNKNOWN[ordinal=50]) port 26399 > (PIVOTAL-1127.ad.pivotal.io:26399) : ready to process messages. > > > Diffs > ----- > > geode-core/build.gradle 49dd84b387867e0189892ba096d35a2483c0ee37 > > geode-core/src/main/java/org/apache/geode/distributed/internal/membership/gms/membership/GMSJoinLeave.java > 7da9de439e28756815e0c5ce3539578c02f22e8f > > geode-core/src/test/java/org/apache/geode/internal/cache/tier/sockets/ClientServerMiscDUnitTest.java > 391653cf1f1b9dbcc7bca5232bf6f230d81dc230 > > geode-core/src/test/java/org/apache/geode/internal/cache/tier/sockets/ClientServerMiscSelectorDUnitTest.java > e177b793cc252038cd8e892be07181ec867d44ed > geode-core/src/test/java/org/apache/geode/test/dunit/DUnitEnv.java > efc196f7998a4ed7410c44346c421e1d8b07d854 > geode-core/src/test/java/org/apache/geode/test/dunit/Host.java > 43cbccf931e43b1f98c42f82955f824c67279109 > geode-core/src/test/java/org/apache/geode/test/dunit/Invoke.java > a09f5ff965ec5e705b41b9b94927be919c07afc7 > geode-core/src/test/java/org/apache/geode/test/dunit/VM.java > 04d29511201fb52b4347c6287f427c3d1a81595f > > geode-core/src/test/java/org/apache/geode/test/dunit/standalone/ChildVM.java > b85d0b55705ba040f6f954a9847ac00f3a334252 > > geode-core/src/test/java/org/apache/geode/test/dunit/standalone/DUnitLauncher.java > 8587ea5e34df82036dbca94602ed2276cef73ca8 > > geode-core/src/test/java/org/apache/geode/test/dunit/standalone/ProcessManager.java > c3c33d04014b173d45bf4bbf7c74a10fc0cc1335 > > geode-core/src/test/java/org/apache/geode/test/dunit/standalone/StandAloneDUnitEnv.java > 3d554edf30c3f703d891f624035c6e918ab16a5b > > geode-core/src/test/java/org/apache/geode/test/dunit/standalone/VersionManager.java > PRE-CREATION > geode-old-versions/build.gradle PRE-CREATION > settings.gradle 8e2673a7750ffaf03d9b00778b93fde7831fa0e4 > > Diff: https://reviews.apache.org/r/55688/diff/ > > > Testing > ------- > > > Thanks, > > Bruce Schuchardt > >