RFR: JDK-8003890: modify test scripts to pass VMOPTIONS

Alan Bateman Alan.Bateman at oracle.com
Fri Dec 7 19:18:58 UTC 2012

On 07/12/2012 16:57, Mark Sheppard wrote:
> test scripts have been updated to invoke the JVM with an env variable TESTVMOPTS
> which carries the vm options to be passed when the jvm is invoked in the test.
> webrev location:
>       http://cr.openjdk.java.net/~chegar/8003890/webrev.00/
> regards
> Mark
This is long overdue, thank you!

With your changes it means that these tests will actually test what we 
think they are testing, eg: "jtreg -vmoption:-client" will actually use 
the client VM to give a simple example. Also it means that finally we 
can control the heap size of these tests, really important when running 
tests concurrently. Finally it means that we can do code coverage and 
use other tool agents with the shell tests, impossible until now. 
Clearly we need to try to replace as many of these shell tests as 
possible over time but that is a much longer term effort.

I skimmed over the patch file and nothing obvious jumped out.  The main 
thing that I looked for was tests that were specifying VM options that 
might conflict with options passed into jtreg. A few minor comments:

- it's okay to ignore java/nio/Buffer/genBasic.sh and 
java/nio/Buffer/genCopyDirectMemory.sh as they are used to generate the 
tests and so aren't used in the actual test execution.

- java/nio/channels/AsynchronousChannelGroup/run_any_task.sh, I see this 
is using -XX:-UseVMInterruptibleIO. This isn't needed any more so you 
can remove it while you are there.

One final point is that jdk/test/Makefile will likely require changes 
too but that is separate to your changes.


More information about the core-libs-dev mailing list