5 Replies Latest reply on Jan 26, 2011 10:33 AM by Jean Luc

    thread deadlocks in Component.getInstanceFromFactory

    Jean Luc Apprentice

      Has anyone else seen a deadlock here?



      Found one Java-level deadlock:
      =============================
      "http-0.0.0.0-8280-97":
        waiting for ownable synchronizer 0x00002aaad2b1ca38, (a java.util.concurrent.locks.ReentrantLock$NonfairSync),
        which is held by "http-0.0.0.0-8280-20"
      "http-0.0.0.0-8280-20":
        waiting for ownable synchronizer 0x00002aaacf603b18, (a java.util.concurrent.locks.ReentrantLock$NonfairSync),
        which is held by "http-0.0.0.0-8280-46"
      "http-0.0.0.0-8280-46":
        waiting for ownable synchronizer 0x00002aaad2b1ca38, (a java.util.concurrent.locks.ReentrantLock$NonfairSync),
        which is held by "http-0.0.0.0-8280-20"




      The common part of all stack traces is:


           at sun.misc.Unsafe.park(Native Method)
           - parking to wait for  <0x00002aaad2b1ca38> (a java.util.concurrent.locks.ReentrantLock$NonfairSync)
           at java.util.concurrent.locks.LockSupport.park(LockSupport.java:158)
           at java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(AbstractQueuedSynchronizer.java:811)
           at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireQueued(AbstractQueuedSynchronizer.java:842)
           at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquire(AbstractQueuedSynchronizer.java:1178)
           at java.util.concurrent.locks.ReentrantLock$NonfairSync.lock(ReentrantLock.java:186)
           at java.util.concurrent.locks.ReentrantLock.lock(ReentrantLock.java:262)
           at org.jboss.seam.Component.getInstanceFromFactory(Component.java:2082)
           at org.jboss.seam.Component.getInstance(Component.java:2014)
           at org.jboss.seam.Component.getInstance(Component.java:1986)
           at org.jboss.seam.Component.getInstance(Component.java:1980)




      I checked in the source but don't have an explanation yet. For a while I thought it was related to this Seam bug (https://issues.jboss.org/browse/JBSEAM-4669) but am not sure anymore.