Uploaded image for project: 'OpenJPA'
  1. OpenJPA
  2. OPENJPA-98

Java deadlock when insert in t1 and find in t2 when using IBM JVM 1.5.0

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • None
    • 0.9.7
    • None
    • None

    Description

      I have a simple test program that uses OpenJPA 0.9.6 to insert an object into a db in one transaction (t1) and retrieve it in another transaction (t2). The program hangs in 30-50% of the executions right before the call to entitymanager.find() (used to retrieve the object in t2). I'm using OpenJPA runtime enhancement.

      By looking at the JVM dump, I can see the following deadlock:
      1LKDEADLOCK Deadlock detected !!!
      NULL ---------------------
      NULL
      2LKDEADLOCKTHR Thread "main" (0x0015EC00)
      3LKDEADLOCKWTR is waiting for:
      4LKDEADLOCKMON sys_mon_t:0x41E40548 infl_mon_t: 0x41E40588:
      4LKDEADLOCKOBJ java/lang/Object@00D41010/00D4101C:
      3LKDEADLOCKOWN which is owned by:
      2LKDEADLOCKTHR Thread "Finalizer thread" (0x41B36200)
      3LKDEADLOCKWTR which is waiting for:
      4LKDEADLOCKMON sys_mon_t:0x0035CD38 infl_mon_t: 0x0035CD78:
      4LKDEADLOCKOBJ sun/misc/Launcher$AppClassLoader@00D4E5B0/00D4E5BC:
      3LKDEADLOCKOWN which is owned by:
      2LKDEADLOCKTHR Thread "main" (0x0015EC00)

      Attachments

        1. console.txt
          78 kB
          Vlad Tatavu
        2. javacore.20070109.114312.3868.zip
          57 kB
          Vlad Tatavu
        3. play.zip
          6 kB
          Vlad Tatavu

        Activity

          People

            kwsutter Kevin W. Sutter
            vtatavu Vlad Tatavu
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: