Am I correct that this problem only shows up on machines with 1 CPU? Such machines exist in virtualization environments (e.g. Travis) but the machines we use for everyday development have multiple CPUs. So, could we add a parameter so that we can turn off parallel tests only in CI?
My goal is to avoid a drop in speed and test coverage while we wait for a workaround. Julian > On Jun 3, 2019, at 2:29 AM, Ruben Q L <[email protected]> wrote: > > Hi all, > > thanks for opening this discussion, Stamatis. > > I think there might be a third way. We could try to check if tuning > surefire configuration solves the problem. > Right now on calcite's pom.xml file we have: > > <surefire.parallel>both</surefire.parallel> > <surefire.threadCount>1</surefire.threadCount> > <surefire.perCoreThreadCount>true</surefire.perCoreThreadCount> > > Thanks to Haisheng's tests, we know that changing threadCount from 1 > to 4 seems to be a workaround, at least on some environments. > Moreover, I have noticed that parallel "both" value is deprecated [1], > so maybe we should try some other values and see if that solves the > problem without disabling parallelization. > > [1] > http://maven.apache.org/surefire/maven-surefire-plugin/test-mojo.html#parallel > > > > Le lun. 3 juin 2019 à 11:00, Stamatis Zampetakis <[email protected]> a > écrit : > >> Hi all, >> >> The past few days we had observed various problems on Jenkins (and >> elsewhere) which made our test suite hang. >> >> Haisheng and Ruben found out that the problem was the parallel execution of >> parameterized tests [1]. I see two ways to unblock this situation and avoid >> such problems in the future: >> >> * disable parallel execution of unit tests; >> * forbid the use of @RunWith(Parameterized.class) annotation; >> >> at least till [1] is resolved. >> >> What do you think? >> >> [1] https://issues.apache.org/jira/browse/SUREFIRE-1430 >>
