Details
-
Improvement
-
Status: Closed
-
Major
-
Resolution: Fixed
-
None
-
None
Description
Maven surefire plugin configuration has two important flags:
(1) reuseForks - setting of true mean reuse created JVMs.
(2) forkCount - number of JVMs to create for testing. Pure number is an absolute count, whereas 1.0C means same as the number of CPUs.
Reusing forked JVMs can cause somewhat indeterminate failures in test when global class instances are not properly initialized or cleaned. An example of such a singleton class Time.
Not reusing will cause a slowdown in tests.
To mitigate this slowdown, wherever the "forkCount=1", change it to "forkCount=1.0C" and add reuseForks=false if not already present. However, some modules (example storm-hdfs) forkCount cannot be increased from 1 to 1.0C, due to either resources limits or global locking (as in hdfs tests).
Attachments
Issue Links
- links to