Hi Everyone
http://cr.openjdk.java.net/~pzhang/Tristan/7190106/webrev/

Description:
1. Convert shell script test to Java program test.
2. Using random server port by reusing Darryl Mocek's work to replace fixed server port.
3. Using java Process class to start client process.
4. Also convert other shell script test runSerialBench.sh to java program test also

Thank you
Tristan

On 01/11/2013 23:58, Stuart Marks wrote:
On 10/31/13 10:22 PM, Tristan Yan wrote:
I am working on bug https://bugs.openjdk.java.net/browse/JDK-7190106. Based on my research, it looks like the issue of fixed port was already addressed
by Stuart Marks in other RMI tests which are Java based. I would like to
reuse his solution, however it does not work for shell based tests.

(Darryl Mocek did the unique port work for the RMI tests.)

Was the patch attached to your message? If so, it didn't get through. Most OpenJDK mailing lists strip off attachments before forwarding the message to the recipients.

2. My recommendation would be to convert this shell script test into Java based test and re-use the dynamic port allocation solution by Stuart Marks to
address the issue

3. Also this test was written with server/client mode in shell script. In the past there have been sync issues between server/client which caused the test to fail. If we convert the shell script into Java based test, it would avoid using "sleep 10" mechanism to allow for server and client to start up and
also give us better control in synchronizing server and client.

(Background for interested readers.) In general, yes, it's quite difficult to make reliable shell tests, especially for multi-process tests like this one. There is the unique port issue, and there is also the issue of how long for the client to wait until the server is ready. Error handling is also a problem, for example, if one of the JVMs gets an unexpected exception, it's easy for shell tests to mishandle this case. They might hang or erroneously report success.

--

If this is a rewrite, it's probably fairly large, so you need to upload it somewhere (e.g., cr.openjdk.java.net) and then post a link to it.

Thanks.

s'marks

Reply via email to