#Test Results (version 2) #Thu May 14 21:20:05 CEST 2009 #checksum:3da4f0b4d0b1466f #-----testdescription----- $file=/home/mark/src/icedtea6/openjdk/jdk/test/java/util/logging/LoggingDeadlock2.java $root=/home/mark/src/icedtea6/openjdk/jdk/test author=Serguei Spitsyn / Hittachi keywords=bug6467152 run=USER_SPECIFIED build LoggingDeadlock2\nUSER_SPECIFIED main/timeout=15 LoggingDeadlock2 There is a clear deadlock between LogManager. and Cleaner.run() methods. T1 thread: The LogManager. creates LogManager.manager object, sets shutdown hook with the Cleaner class and then waits to lock the LogManager.manager monitor. T2 thread: It is started by the System.exit() as shutdown hook thread. It locks the LogManager.manager monitor and then calls the static methods of the LogManager class (in this particular case it is a trick of the inner classes implementation). It is waits when the LogManager. is completed. This is a regression test for this bug.\n source=LoggingDeadlock2.java title=deadlock occurs in LogManager initialization and JVM termination #-----environment----- #-----testresult----- description=file:/home/mark/src/icedtea6/openjdk/jdk/test/java/util/logging/LoggingDeadlock2.java end=Thu May 14 21:20:05 CEST 2009 environment=regtest execStatus=Failed. Unexpected exit from test [exit code: 1] javatestOS=Linux 2.6.29.3-140.fc11.x86_64 (amd64) javatestVersion=unset script=com.sun.javatest.regtest.RegressionScript sections=script_messages build compile build main start=Thu May 14 21:20:03 CEST 2009 test=java/util/logging/LoggingDeadlock2.java work=/home/mark/src/icedtea6/test/jdk/JTwork/java/util/logging #section:script_messages ----------messages:(4/237)---------- JDK under test: (/home/mark/src/icedtea6/openjdk/build/linux-amd64/j2sdk-image) java version "1.6.0_0" OpenJDK Runtime Environment (IcedTea6 1.5pre-r50c172a7a7f4) (build 1.6.0_0-b16) OpenJDK 64-Bit Server VM (build 14.0-b15, mixed mode) #section:build ----------messages:(3/121)---------- command: build LoggingDeadlock2 reason: User specified action: run build LoggingDeadlock2 elapsed time (seconds): 1.918 result: Passed. Build successful #section:compile ----------messages:(3/178)---------- command: compile /home/mark/src/icedtea6/openjdk/jdk/test/java/util/logging/LoggingDeadlock2.java reason: .class file out of date or does not exist elapsed time (seconds): 1.917 ----------System.out:(0/0)---------- ----------System.err:(0/0)---------- result: Passed. Compilation successful #section:build ----------messages:(3/99)---------- command: build LoggingDeadlock2 reason: Named class compiled on demand elapsed time (seconds): 0.0 result: Passed. All files up to date #section:main ----------messages:(3/1307)---------- command: main LoggingDeadlock2There is a clear deadlock between LogManager. and Cleaner.run() methods. T1 thread: The LogManager. creates LogManager.manager object, sets shutdown hook with the Cleaner class and then waits to lock the LogManager.manager monitor. T2 thread: It is started by the System.exit() as shutdown hook thread. It locks the LogManager.manager monitor and then calls the static methods of the LogManager class (in this particular case it is a trick of the inner classes implementation). It is waits when the LogManager. is completed. This is a regression test for this bug. reason: User specified action: run main/timeout=15 LoggingDeadlock2 There is a clear deadlock between LogManager. and Cleaner.run() methods. T1 thread: The LogManager. creates LogManager.manager object, sets shutdown hook with the Cleaner class and then waits to lock the LogManager.manager monitor. T2 thread: It is started by the System.exit() as shutdown hook thread. It locks the LogManager.manager monitor and then calls the static methods of the LogManager class (in this particular case it is a trick of the inner classes implementation). It is waits when the LogManager. is completed. This is a regression test for this bug. elapsed time (seconds): 0.224 ----------System.out:(3/92)---------- This test checks that there is no deadlock. If not crashed or timed-out then it is passed. ----------System.err:(0/0)---------- result: Failed. Unexpected exit from test [exit code: 1] test result: Failed. Unexpected exit from test [exit code: 1]