JDK-8005472 : com/sun/jmx/remote/NotificationMarshalVersions/TestSerializationMismatch.sh failed on windows
  • Type: Bug
  • Component: core-svc
  • Sub-Component: javax.management
  • Affected Version: 8
  • Priority: P3
  • Status: Closed
  • Resolution: Fixed
  • Submitted: 2012-12-26
  • Updated: 2014-01-15
  • Resolved: 2013-05-28
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
JDK 8
8 b93Fixed
Related Reports
Relates :  
Relates :  
Description
com/sun/jmx/remote/NotificationMarshalVersions/TestSerializationMismatch.sh

Failed on windows platform. And it left running Server process which hang "make".

Failure log:
----------messages:(6/265)*----------
JDK under test: (C:\\Users\\aurora\\sandbox\\jdk)
java version "1.8.0-ea"
Java(TM) SE Runtime Environment (build 1.8.0-ea-langtools-nightly-h400-20121225-b70-b00)
Java HotSpot(TM) 64-Bit Server VM (build 25.0-b12, mixed mode)

Timeout signaled after 480 seconds

#section:shell
----------messages:(3/153)----------
command: shell TestSerializationMismatch.sh []
reason: User specified action: run shell TestSerializationMismatch.sh
elapsed time (seconds): 480.011
----------System.out:(1/13)----------
Test PASSED
----------System.err:(2/272)----------
rm: cannot unlink entry "C:/Users/aurora/sandbox/gresults/testoutput/jdk_jmx/JTwork/classes/com/sun/jmx/remote/Notificat
ionMarshalVersions/Server/jmxurl": The system cannot find the path specified.
server listening on service:jmx:rmi:///jndi/rmi://localhost:12345/test
result: Error. Program `sh' interrupted! (timed out?)


test result: Error. Program `sh' interrupted! (timed out?)

JTreg has exit, but the "make" seems can't exit because Server process is still running:
  aurora  10908  15912  0 19:51:03 con  0:00 C:\Users\aurora\sandbox\jdk\bin\java -classpath C:/Users/aurora/sandbox/gresults/testoutput/jdk_jmx/JTwork/classes/com/sun/jmx/remote/NotificationMarshalVersions/Server Server
  aurora  16268  16904  0 19:48:24 con  0:00 C:\Users\aurora\sandbox\make381.exe "JPRT_PRODUCT_ARGS= " PRODUCT_HOME=C:/Users/aurora/sandbox/jdk ALT_OUTPUTDIR=C:/Users/aurora/sandbox/gresults jdk_jmx
Comments
----------System.out:(1/13)---------- Test PASSED ----------System.err:(1/72)---------- server listening on service:jmx:rmi:///jndi/rmi://localhost:12345/test result: Error. Execution failed test result: Error. Execution failed
23-05-2013

Yes, that's the reason. But while reviewing the change it was recommended to rewrite the test in java so we can avoid sometimes tricky behaviour of the shell scripts. The update is docummented in http://mail.openjdk.java.net/pipermail/jmx-dev/2013-May/000217.html
21-05-2013

My finding is, the test leaving running Server process on windows machine (and this might be the reason hang job). kill "$SERVER_PID" dose not really kill the server process in the test. I think below change can solve above issue: 60c60 < $TESTJAVA/bin/java -classpath $SERVER_TESTCLASSES Server >$URL_PATH 2>&1 & --- > ($TESTJAVA/bin/java -classpath $SERVER_TESTCLASSES Server) 1>$URL_PATH &
21-05-2013

The hang is caused by using an incorrect server PID for killing the process. An intermediate shell process PID can be used instead of the real java process, leaving that process running with the locked files/directories.
02-05-2013