Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-6260469

test nsk/jvmti/GetThreadState/thrstat002 failed

XMLWordPrintable

    • b13
    • generic, x86
    • generic, windows_xp

      The test
        nsk/jvmti/GetThreadState/thrstat002
      is failed intermittently on Windows-{amd64/ia64}.

      The following is the log from nightly run on Windows-ia64:

      #!E:/PROGRA~1/MKSTOO~1/mksnt/sh.exe

      RAS_OPTIONS=
      SystemRoot=C:/WINDOWS
      SHELL=E:/PROGRA~1/MKSTOO~1/mksnt/sh.exe
      PATH="C:/temp/Work/JDK/NIGHTLY/Serv_Baseline/windows-ia64/bin;Y:/nightly/mantis/DTWS/suites/JVMTI_QUICKLOOK/testbase/src/nsk/share/lib/winia64;C:/temp/Work/JDK/NIGHTLY/Serv_Baseline/windows-ia64/jre/bin/server;C:/temp/Work/JDK/NIGHTLY/Serv_Baseline/windows-ia64/jre/bin;Y:/nightly/mantis/DTWS/suites/JVMTI_QUICKLOOK/testbase/bin/lib/winia64/nsk/jvmti/GetThreadState;"
      WINDIR=C:/WINDOWS
      LD_LIBRARY_PATH=Y:/nightly/mantis/DTWS/suites/JVMTI_QUICKLOOK/testbase/bin/lib/winia64/nsk/jvmti/GetThreadState;
      CLASSPATH="C:/temp/Work/exec/JVMTI_QUICKLOOK-11-NIGHTLY-Serv_Baseline-ServerVM-comp-64BITWIN-IA64-2005-04-12-01-17-47-0819/run2/Administrator.Windows_2003.ia64/thrstat002;Y:/nightly/mantis/DTWS/suites/JVMTI_QUICKLOOK/testbase/bin/classes;C:/temp/Work/JDK/NIGHTLY/Serv_Baseline/windows-ia64/lib/tools.jar"

      while [ $# -gt 0 ];
      do
        if [ $1 = "-jdk" ]; then
      shift 1
      PATH=${1}/bin;${PATH}
      shift 1
        fi
      done

      export RAS_OPTIONS
      export SystemRoot
      export SHELL
      export PATH
      export WINDIR
      export LD_LIBRARY_PATH
      export CLASSPATH

      #annotate TEST javaopt=C:/temp/Work/JDK/NIGHTLY/Serv_Baseline/windows-ia64/bin/java -server -Xcomp -XX:-ShowMessageBoxOnError -XX:-PrintVMOptions -XX:CompileOnly=nsk -agentlib:thrstat002
      E:/PROGRA~1/MKSTOO~1/mksnt/perl.exe Y:/nightly/mantis/DTWS/suites/JVMTI_QUICKLOOK/testbase/src/nsk/share/jvmti/run_jvmti.pl C:/temp/Work/JDK/NIGHTLY/Serv_Baseline/windows-ia64/bin/java -server -Xcomp -XX:-ShowMessageBoxOnError -XX:-PrintVMOptions -XX:CompileOnly=nsk -DHANGINGJAVA4504 -agentlib:thrstat002 nsk.jvmti.GetThreadState.thrstat002 2
      ##Exit status of execution step=97
      ##!checkExitCode

      ## Waiting time = 2 mins
      #thrstat002.meth after thr.start()
      #thrstat002a.run before startingBarrier.unlock
      #thrstat002.meth after thr.startingBarrier.waitFor()
      #thrstat002a.run after startingBarrier.unlock
      #thrstat002a.run before blockingMonitor lock
      #thrstat002.meth after checkStatus(STATUS_MONITOR,false)
      #thrstat002.meth after thr.suspend()
      #thrstat002.meth after checkStatus(STATUS_MONITOR,true)
      #thrstat002.meth after thr.resume()
      #thrstat002.meth after checkStatus(STATUS_MONITOR,false)
      #thrstat002a.run blockingMonitor locked
      #thrstat002a.run after blockingMonitor lock
      #thrstat002a.run after runningBarrier unlock
      #thrstat002a.run before endingMonitor unlock
      #Wrong thread "thr1" (0x000006FBFEFFB628) state after SuspendThread:
      # expected: BLOCKED_ON_MONITOR_ENTER (1024)
      # actual: ALIVE RUNNABLE SUSPENDED (1048581)

      Please, consider a couple of fragment below:

      public class thrstat002 {
          ...
          void meth() {
              ...
              synchronized (blockingMonitor) {
                  thr.start();
                  System.out.println("thrstat002.meth after thr.start()");
                  startingBarrier.waitFor();
                  System.out.println("thrstat002.meth after thr.startingBarrier.waitFor()");
                  checkStatus(STATUS_MONITOR, false); *** <- this part reported the error
                  ...
              }
              ...


      class thrstat002a extends Thread {
          ...
          public void run() {
              synchronized (thrstat002.endingMonitor) {
                  ...
                  System.out.println("thrstat002a.run before blockingMonitor lock");
                  synchronized (thrstat002.blockingMonitor) {
                     System.out.println("thrstat002a.run blockingMonitor locked");
                  }
           ...


      ###@###.### 2005-06-08 09:59:32 GMT


      This bug reproduced on the 2005.06.09 nightly run on Win32 Server VM.

      ###@###.### 2005-06-10 17:35:14 GMT

            dtitov Daniil Titov (Inactive)
            sspitsyn Serguei Spitsyn
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

              Created:
              Updated:
              Resolved:
              Imported:
              Indexed: