RFR JDK-8152589 : java/lang/management/ThreadMXBean/Locks.java fails intermittently, blocked on wrong object

Harsha Wardhana B harsha.wardhana.b at oracle.com
Tue Aug 16 06:08:30 UTC 2016


Hello,

Please review and provide comments for fix for issue,

https://bugs.openjdk.java.net/browse/JDK-8152589

having webrev located at

http://cr.openjdk.java.net/~hb/8152589/webrev.00/

Fix details:

1. From nightly failures we see that LockThreadB was blocked on wrong 
object. We now do a repeated check with timeout if any given thread is 
blocked on expected object. It is possible that LockThreadB might still 
be in Phaser call stack (Unsafe.park) when 'checkBlockedObject' is invoked.

2. The logs from lock free logger was never printed. It is not being 
printed.

3. Any time we see failure, thread stack is being logged. This helps us 
ascertain if failure is in test case or in the component.

4. Even though we had lock free logger, several ex.printStackTrace() was 
used which could be responsible for failure. It is removed.

5. There were several places where tests continue to ran even after 
failure (testFailed flag). That is fixed.

6. Couple of other minor refactoring.

Thanks

Harsha



More information about the serviceability-dev mailing list