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

TEST_BUG: Regression-test javax/sound/sampled/Clip/ClipFlushCrash.java fails

    Details

      Description



      Name: iaR10016 Date: 12/01/2003


      Filed By : J2SE-SQA [###@###.###
      JDK : JDK1.5.0-b29, JDK1.5.0-b29
                        (this is a new test which is absent in previous JDK builds)
      Testbase : Regression-test
      Platform[s] : Suse Linux 8.2 (GNOME2)
      switch/Mode : -client
      Falling test[s]: javax/sound/sampled/Clip/ClipFlushCrash.java

      Regression-test javax/sound/sampled/Clip/ClipFlushCrash.java test fails with timeout
      using JDK1.5.0-b29.

      It seems like the test fails because of synchronization problems:

      Here is the test source fragment:

      --------- ClipFlushCrash.java ---------
      ...
           68 AT at4 = new AT(clip, "open/close thread", 600) {
           69 public synchronized void doAction() throws Exception {
           70 log("close");
           71 clip.close();
           72 wait(50);
           73 if (!terminated) {
           74 log("open");
           75 bais.reset();
           76 clip.open(new AudioInputStream(bais, format, frameCount));
           77 }
           78 }
           79 };
           80
           81 out(" clip.start");
           82 clip.start();
           83 out(" for 10 seconds, call start/stop, setFramePosition, and flush from other threads");
           84 at1.start();
           85 at2.start();
           86 at3.start();
           87 at4.start();
           88 try {
           89 Thread.sleep(10000);
           90 } catch (InterruptedException ie) {}
           91 out(" finished.");
           92 at1.terminate();
           93 at2.terminate();
           94 at3.terminate();
           95 at4.terminate();
           96 out(" clip.close()");
           97 clip.close();
           98 success++;
      ...
      ---------------------------------------

      Problem is that at4 can be closed when the main thread tries to terminate it, so the test hangs
      at the line 95 and never finishes.

      The test stable passes if I increase waiting time at the line 72:
      ...
           72 wait(10000);
      ...

      Test source location:
      =====================
      /java/re/jdk/1.5.0/promoted/latest/ws/j2se/test/javax/sound/sampled/Clip/ClipFlushCrash.java

      jtr file location:
      ==================
      /net/jtgb4u4c.sfbay/export/sail15/results.2/tiger/b29/regtest/linux/suse8.2_gnome_linux-2/workDir/test/javax/sound/sampled/Clip/ClipFlushCrash.jtr

      How to reproduce:
      =================
      Run the following script (you may need to change its variables):
      --- script start ---
      #!/bin/sh
      RESULT_DIR=`pwd`
      WORK_DIR=$RESULT_DIR/workDir/test
      REPORT_DIR=$RESULT_DIR/reportDir

      #Paths in Java Software:
      JT_HOME="/java/re/jct-tools/3.1.2/archive/fcs/binaries"
      JEMMY_JAR="/net/jdk/export/jpse04/Jemmy/jemmy.jar"
      JAVA_HOME="/java/re/jdk/1.5.0/promoted/all/b29/binaries/linux-i586"
      TEST_BASE_PATH="/java/re/jdk/1.5.0/promoted/all/b29/ws/j2se/test"

      #Alternative paths outside Java Software:
      #JT_HOME="/net/koori.sfbay/onestop/jct-tools/3.1.2/archive/fcs/binaries"
      #JEMMY_JAR="/net/jdk/export/jpse04/Jemmy/jemmy.jar"
      #JAVA_HOME="/net/koori.sfbay/onestop/jdk/1.5.0/promoted/all/b29/binaries/linux-i586"
      #TEST_BASE_PATH="/net/koori.sfbay/onestop/jdk/1.5.0/promoted/all/b29/ws/j2se/test"

      TESTVMOPTS="-client"
      CLASSPATH="$JT_HOME/classes:$JT_HOME/lib/javatest.jar:$JT_HOME/lib/jtreg.jar"
      TEST="javax/sound/sampled/Clip/ClipFlushCrash.java"

      mkdir -p $WORK_DIR/scratch 2>&1
      mkdir -p $WORK_DIR/jtData 2>&1
      mkdir -p $REPORT_DIR 2>&1
      #rm $WORK_DIR/jtData/ResultCache.jtw 2>&1
      cd $WORK_DIR/scratch

      $JAVA_HOME/bin/java -server -cp $CLASSPATH -DenvVars=TESTJAVAHOME=$JAVA_HOME,TESTVMOPTS=$TESTVMOPTS,DISPLAY=:0,HOME=$HOME/.regtest,PATH=/bin:/usr/bin,CPAPPEND=$JEMMY_JAR,TZ=,LC_ALL=en_US,LC_CTYPE=en_US,LANG=en_US,LPDEST= -DDISPLAY=:0 -DlocalHost="linux-2" -Dprogram=jtreg com.sun.javatest.regtest.Main -a -v default -batch -params -w "$WORK_DIR" -r "$REPORT_DIR" -t "$TEST_BASE_PATH" "$TEST_BASE_PATH/$TEST"
      --- script end ---

      Test output (jtr part):
      =======================
      ----------System.out:(26/927)----------
      Using default mixer
        got clip: com.sun.media.sound.MixerClip@665753
        no direct audio clip -> do not test.
      Using mixer: com.sun.media.sound.DirectAudioDevice@ef22f8
        got clip: com.sun.media.sound.DirectAudioDevice$DirectClip@17ace8d
        open
        clip.start
        for 10 seconds, call start/stop, setFramePosition, and flush from other threads
          flush thread: start
          start/stop thread: start
          setFramePosition thread: start
          open/close thread: start
          setFramePosition thread: setPosition to frame 40306
          flush thread: flush
          setFramePosition thread: setPosition to frame 404637
          setFramePosition thread: setPosition to frame 393964
          flush thread: flush
          start/stop thread: stop
          setFramePosition thread: setPosition to frame 340047
          flush thread: flush
          open/close thread: close
          start/stop thread: start
        finished.
          flush thread: terminate
          setFramePosition thread: terminate
          start/stop thread: terminate
      ----------System.err:(0/0)----------
      result: Failed. Execution failed: Program `/net/linux-15/export/home/java/jdk1.5.0/linux.shared/bin/java' interrupted! (timed out?)

      test result: Failed. Execution failed: Program `/net/linux-15/export/home/java/jdk1.5.0/linux.shared/bin/java' interrupted! (timed out?)

      Specific machine info:
      ======================
      Hostname: linux-2
      OS: Suse Linux 8.2 (GNOME2)

      ======================================================================

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                fbomerssunw Florian Bomers (Inactive)
                Reporter:
                irasunw Ira Ira (Inactive)
              • Votes:
                0 Vote for this issue
                Watchers:
                0 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved:
                  Imported:
                  Indexed: