[infinispan-dev] Testsuite: hanging TestNG, CDI proken

Sanne Grinovero sanne at infinispan.org
Sun Oct 28 06:12:32 EDT 2012


Hello all,

besides having regular failures, I also experienced occasional hangs
while running the testsuite; in some cases I found the following stack
which suggests a TestNG bug:

"pool-3-thread-14" prio=10 tid=0x00007f0d84632000 nid=0x1ce5 runnable
[0x00007f0d58a36000]
   java.lang.Thread.State: RUNNABLE
	at java.util.HashMap.put(HashMap.java:374)
	at org.testng.SuiteRunner.runTest(SuiteRunner.java:320)
	at org.testng.SuiteRunner.access$000(SuiteRunner.java:34)
	at org.testng.SuiteRunner$SuiteWorker.run(SuiteRunner.java:351)
	at org.testng.internal.thread.ThreadUtil$CountDownLatchedRunnable.run(ThreadUtil.java:147)
	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
	at java.lang.Thread.run(Thread.java:662)

Even when taking multiple dumps that thread is still in the same loop,
and having a single CPU stuck at 100% I'm guessing the HashMap was
being used in some unsafe way regarding concurrency; we're using the
first minor version of TestNG which ever supported parallel testsuite
invocations so that might not be very solid.

Not sure why, but upgrading TestNG from 5.14.10 to 6.7 seems to
resolve the problem.

Now I wish I could send a pull request, but even skipping just the
core testsuite (which always fails for me even in non-parallel mode)
many other modules are broken both with and without my patches, so I'm
dropping my experiments as I won't send any pull requests if the tests
can't back my changes up.

As an example the CDI integration is:

Tests run: 247, Failures: 102, Errors: 0, Skipped: 143

...which means 2 tests are fine.

Cheers,
Sanne


More information about the infinispan-dev mailing list