RFR(XS) 8242789: sun/tools/jhsdb/HeapDumpTestWithActiveProcess.java fails with 'JShellToolProvider' missing from stdout/stderr
Chris Plummer
chris.plummer at oracle.com
Fri Apr 17 17:30:06 UTC 2020
Hello,
Please review the following:
https://bugs.openjdk.java.net/browse/JDK-8242789
http://cr.openjdk.java.net/~cjplummer/8242789/webrev.00
JShellHeapDumpTest.java has two variants, one that does a short 2 second
sleep after launching the jshell process (the main
JShellHeapDumpTest.java test does this) and the other that does no sleep
(HeapDumpTestWithActiveProcess.java does this by invoking
JShellHeapDumpTest.java with the "nosleep" argument).
The reason for the 2 second sleep is to get the jshell process into a
steady state so JDK-8231634 [1] doesn't turn up when using SA on the
jshell process. I added the sleep instead of problem listing
JShellHeapDumpTest.java since it is a useful test even with the sleep
in place. HeapDumpTestWithActiveProcess.java was added so we still had a
test to reproduce JDK-8231634 [1], and was problem listed immediately.
However, another side affect of not sleeping is sometimes SA requests
the thread dump of the jshell process before jshell enters its main
thread. Thus the test can't find the "JShellToolProvider" symbol in the
thread dump. The fix is to simply not require the symbol to be present
when in "nosleep" mode.
thanks,
Chris
[1] https://bugs.openjdk.java.net/browse/JDK-8231634
More information about the serviceability-dev
mailing list