Hi all,

We just had a conversation among some members of the community about the
increasingly slow DUnit tests that are related to rolling upgrades.

Please chime in with questions and concerns!

Here are my notes from the discussion:







*Why are rolling upgrade tests slow?Six versions of servers have to to be
1. Started with old version2. Do some work3. Shut down4. Updated5.
Restarted6. Do more work and make assertionsThe above happens for every
test method individually. This takes ~1 minute per method and per version.
This is done serially right now for all methods within a class.Our other
DUnit tests can reuse JVMs. These tests are starting a fresh JVM.How can we
make them faster?Option 1: Move every test method into its own class. This
will allow us to run them in parallelThis would allow us to run ~45 tests
in parallelMight increase ease of exploring test suite.Option 2: Move
rolling upgrade tests into their own Concourse job.This can be done in
addition to other options.Option 3: Restricting what version jumps are
supported.Can we decide to not support certain version jumps?Will we
support jumping from Geode 1.x to arbitrary Geode 2.x version?Option 4:
Change test runner to run for different version transitions in parallel.We
could generate classes that contain the desired source and destination
versions and then runs those in parallel.Next ActionsOptions 1 & 2 seem to
be fairly simple changes without much downside and should get us far.
Implementing those two solutions and seeing how long that leaves our test
suite seem like the best first step. Jacob Barrett will take the lead on
turning these two options into action.*

Reply via email to