RFR: 8241123: Refactor vmTestbase stress framework to use j.u.c and make creation of threads more flexible

Leonid Mesnik leonid.mesnik at oracle.com
Tue Mar 24 03:55:02 UTC 2020


Hi

Could you please review following fix which update ThreadsRunner to use AtomicInteger/spinOnWait instead of Wicket to synchronize starting of stress test threads.

Failing tests allocated all memory by earlier started threads before Lock.unlock is called in the latest threads. So thread might get an OOME exception while trying to release lock and/or get into inconsistent state.

The bug was introduced by https://bugs.openjdk.java.net/browse/JDK-8241123 <https://bugs.openjdk.java.net/browse/JDK-8241123>
The Atomic works fine for stress test finishing sync. I just didn't expect that tests might OOME while releasing start lock.
Verified that tests now don't fail with -Xcomp -server -XX:-TieredCompilation -XX:-UseCompressedOops.

webrev: http://cr.openjdk.java.net/~lmesnik/8241456/webrev.00/ <http://cr.openjdk.java.net/~lmesnik/8241456/webrev.00/>
bug: https://bugs.openjdk.java.net/browse/JDK-8241456 <https://bugs.openjdk.java.net/browse/JDK-8241456>

Leonid


More information about the hotspot-gc-dev mailing list