RFR: JDK-8003890: modify test scripts to pass VMOPTIONS
Stuart Marks
stuart.marks at oracle.com
Mon Dec 10 23:48:28 UTC 2012
On 12/10/12 3:25 AM, Alan Bateman wrote:
> On 10/12/2012 11:13, Chris Hegarty wrote:
>> Thank you Mark, this is a really useful contribution.
>>
>> I noticed that a few tests (below) specify either -client or -server. If the
>> vmoptions contain either of these arguments, and this seems to be the way our
>> test/Makefile is passing them, then it may result in the test using the wrong
>> vm. I think we should remove TESTVMOPTS from these tests, but then we lose
>> other potential opts, like heap size, etc.
>>
>> java/rmi/reliability/benchmark/runRmiBench.sh
>> java/rmi/reliability/benchmark/runSerialBench.sh
>> sun/management/jmxremote/startstop/JMXStartStopTest.sh
> You're right, this will cause conflict.
>
> In the case of JMXStartStopTest.sh and runSerialBench.sh then it might be
> better to remove the -server.
>
> Stuart might have an opinion on runRmiBench.sh but one idea is to change is so
> that when run interactively (TESTJAVA not set) then it works as it does now and
> runs the benchmark twice. If TESTJAVA is not set then it runs the benchmark
> once, with whatever VM options are in use.
For runRmiBench.sh the benchmark actually runs two JVMs, one as the RMI server
and the other as the RMI client. Note that -client and -server are passed as
arguments to the bench.rmi.Main start-class, which causes them to behave
differently. I'm wondering if whoever wrote the script originally confused the
arguments to Main with the arguments to the JVMs. Or, perhaps some tenuous line
of reasoning was used, such as "the RMI server is probably running on a server
and so should be running the server VM, and same for the RMI client."
So, I think that the JVM -server and -client args should be replaced by
$TESTVMOPTS. But of course please leave -server and -client args to the Main
class unchanged.
(Note, the runRmiBench.sh test is currently on the problem list so it's not run
right now anyway.)
For runSerialBench.sh, yes, I think removing -server and adding $TESTVMOPTS is
the right thing.
* * *
I've looked over the test/java/io/Serializable and the test/java/rmi changes
and they look fine. I haven't looked at the other changes though. I can look at
more files too if you need to spread out the reviewing load.
s'marks
More information about the core-libs-dev
mailing list