RFR(XS): 8167001: [TESTBUG] java/lang/instrument/DaemonThread/TestDaemonThread.java fails when run by jprt

David Holmes david.holmes at oracle.com
Thu Oct 6 01:37:28 UTC 2016


Hi Chris,

This seems fine. As you say there may be a number of ways to address 
this problem, but this is clear and simple and does fix it.

Thanks,
David

On 6/10/2016 3:30 AM, Chris Plummer wrote:
> Hello,
>
> [Sorry if some of you are seeing this a second time. I used the wrong
> alias the first time around]
>
> Please review the following:
>
> https://bugs.openjdk.java.net/browse/JDK-8167001
> http://cr.openjdk.java.net/~cjplummer/8167001/webrev.00/webrev.jdk/
>
> This fixes an issue with the classpath not being passed to the
> subprocess, resulting in the main class for the subprocess not being
> found. It only turns up when running the test with "agentvm", which is
> the default when running the test via test/Makefile (which is what jprt
> uses). "othervm" seems to be the default when running jtreg directly
> from the command line, so it doesn't see this problem.
>
> It would also be possible to fix this problem by forcing the test to
> always run with othervm. However, I feel that is relying on a side
> affect of othervm and is not its intended purpose.  Existing tests fix
> this issue by explicitly passing the classpath to the subprocess. This
> is usually done by passing "true" as the first argument to
> ProcessTools.createJavaProcessBuilder(). This is actually the default
> behavior for hotspot/test. For jdk/test the default is "false" so you
> need to explicitly pass "true".
>
> Tested by running with jprt under conditions where the test was
> previously failing. Also tested by running the test directory locally
> using jdk/Makefile (which previously was failing).
>
> thanks,
>
> Chris
>


More information about the serviceability-dev mailing list