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

Corba classes deadlock

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Won't Fix
    • Icon: P3 P3
    • None
    • 7u10
    • other-libs
    • generic
    • generic

      FULL PRODUCT VERSION :
      java version "1.7.0_10"
      Java(TM) SE Runtime Environment (build 1.7.0_10-b18)
      Java HotSpot(TM) Server VM (build 23.6-b04, mixed mode)


      ADDITIONAL OS VERSION INFORMATION :
      Linux ubuntu 3.2.0-54-generic-pae #82-Ubuntu SMP Tue Sep 10 20:29:22 UTC 2013 i686 i686 i386 GNU/Linux

      A DESCRIPTION OF THE PROBLEM :
      execution of the attached program sometimes deadlocks !

      REGRESSION. Last worked in version 7u10

      ADDITIONAL REGRESSION INFORMATION:
      java version "1.7.0_10"
      Java(TM) SE Runtime Environment (build 1.7.0_10-b18)
      Java HotSpot(TM) Server VM (build 23.6-b04, mixed mode)

      STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
      run and watch; Or run again & again & again..., and watch for some deadlocked execution !!

      EXPECTED VERSUS ACTUAL BEHAVIOR :
      EXPECTED -
      Runs successfully to completion everytime !
      ACTUAL -
      some executions deadlock !!

      ERROR MESSAGES/STACK TRACES THAT OCCUR :
      Found one Java-level deadlock:
      =============================
      "Thread-1":
        waiting to lock monitor 0x6ff9b984 (object 0x9e7d0880, a java.lang.Class),
        which is held by "Thread-0"
      "Thread-0":
        waiting to lock monitor 0x6ff9ab10 (object 0x9e7333b8, a java.lang.Class),
        which is held by "Thread-1"

      Java stack information for the threads listed above:
      ===================================================
      "Thread-1":
      at com.sun.org.omg.CORBA.ValueMemberHelper.type(ValueMemberHelper.java:66)
      - waiting to lock <0x9e7d0880> (a java.lang.Class for com.sun.org.omg.CORBA.ValueMemberHelper)
      at com.sun.org.omg.CORBA.ValueDefPackage.FullValueDescriptionHelper.type(FullValueDescriptionHelper.java:121)
      - locked <0x9e7333b8> (a java.lang.Class for org.omg.CORBA.TypeCode)
      - locked <0x9e7332a8> (a java.lang.Class for com.sun.org.omg.CORBA.ValueDefPackage.FullValueDescriptionHelper)
      at CorbaVmhDeadlock$2.run(CorbaVmhDeadlock.java:25)
      "Thread-0":
      at com.sun.org.omg.CORBA.ValueMemberHelper.type(ValueMemberHelper.java:70)
      - waiting to lock <0x9e7333b8> (a java.lang.Class for org.omg.CORBA.TypeCode)
      - locked <0x9e7d0880> (a java.lang.Class for com.sun.org.omg.CORBA.ValueMemberHelper)
      at com.sun.org.omg.CORBA.ValueMemberHelper.insert(ValueMemberHelper.java:50)
      at CorbaVmhDeadlock$1.run(CorbaVmhDeadlock.java:20)

      Found 1 deadlock.


      REPRODUCIBILITY :
      This bug can be reproduced often.

      ---------- BEGIN SOURCE ----------
      ceems@ubuntu:~/phd-new/thesis/last-minus/oopsla-tarball/deadlocks/src$ cat CorbaVmhDeadlock.java
      /* <Cycle-2 locks=" com.sun.org.omg.CORBA.ValueMemberHelper.class(1.3) org.omg.CORBA.TypeCode.class(1.2)(Update)">
       * <Thread-1>
       * com.sun.org.omg.CORBA.ValueMemberHelper.insert:(Lorg/omg/CORBA/Any;Lorg/omg/CORBA/ValueMember;)V
       * <com.sun.org.omg.CORBA.ValueMemberHelper.class>com.sun.org.omg.CORBA.ValueMemberHelper.type:()Lorg/omg/CORBA/TypeCode;
       * org.omg.CORBA.TypeCode.class
       * <org.omg.CORBA.TypeCode.class>com.sun.org.omg.CORBA.ValueMemberHelper.type:()Lorg/omg/CORBA/TypeCode;#Lorg/omg/CORBA/TypeCode.class;#0=VarientOf=com.sun.org.omg.CORBA.ValueMemberHelper.type:()Lorg/omg/CORBA/TypeCode;
       * </Thread-1>
       * <Thread-2>
       * <com.sun.org.omg.CORBA.ValueDefPackage.FullValueDescriptionHelper.class>com.sun.org.omg.CORBA.ValueDefPackage.FullValueDescriptionHelper.type:()Lorg/omg/CORBA/TypeCode;
       * <org.omg.CORBA.TypeCode.class>com.sun.org.omg.CORBA.ValueDefPackage.FullValueDescriptionHelper.type:()Lorg/omg/CORBA/TypeCode;#Lorg/omg/CORBA/TypeCode.class;#0=VarientOf=com.sun.org.omg.CORBA.ValueDefPackage.FullValueDescriptionHelper.type:()Lorg/omg/CORBA/TypeCode;
       * com.sun.org.omg.CORBA.ValueMemberHelper.class
       * <com.sun.org.omg.CORBA.ValueMemberHelper.class>com.sun.org.omg.CORBA.ValueMemberHelper.type:()Lorg/omg/CORBA/TypeCode;
       * </Thread-2>
       * </Cycle-2>
       */

      public class CorbaVmhDeadlock {
       public static void main(String[] args) {
        new Thread() {
         public void run() { com.sun.org.omg.CORBA.ValueMemberHelper.insert(
                          new com.sun.corba.se.impl.corba.AnyImpl(
                          new com.sun.corba.se.impl.orb.ORBSingleton()), null); };
        }.start();
        new Thread() {
         public void run() { com.sun.org.omg.CORBA.ValueDefPackage.FullValueDescriptionHelper.type(); };
        }.start();
       }
      }

      ---------- END SOURCE ----------

      CUSTOMER SUBMITTED WORKAROUND :
      run again and hope for the best!!

            Unassigned Unassigned
            webbuggrp Webbug Group
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

              Created:
              Updated:
              Resolved: