[jboss-jira] [JBoss JIRA] Commented: (JBAOP-713) Deadlock on Rebuildingchain test
Flavia Rainone (JIRA)
jira-events at lists.jboss.org
Fri Apr 3 19:07:22 EDT 2009
[ https://jira.jboss.org/jira/browse/JBAOP-713?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12460583#action_12460583 ]
Flavia Rainone commented on JBAOP-713:
--------------------------------------
The fact that thre is only one thread waiting on a lock suggests that the thread that acquired the lock didn't release it. The result: a dangling acquired lock and a thread trying to acquire this lock.
> Deadlock on Rebuildingchain test
> --------------------------------
>
> Key: JBAOP-713
> URL: https://jira.jboss.org/jira/browse/JBAOP-713
> Project: JBoss AOP
> Issue Type: Bug
> Security Level: Public(Everyone can see)
> Affects Versions: 2.1.0.CR2
> Reporter: Flavia Rainone
> Assignee: Flavia Rainone
> Fix For: 2.0.2.GA
>
>
> I found this deadlock when fixing JBAOP-567:
> [junit] Full thread dump Java HotSpot(TM) Server VM (1.5.0_12-b04 mixed mode):
> [junit]
> [junit] "Thread-19" prio=1 tid=0x8c86a4a0 nid=0x22a8 waiting on condition [0x8c9a4000..0x8c9a5130]
> [junit] at sun.misc.Unsafe.park(Native Method)
> [junit] at java.util.concurrent.locks.LockSupport.park(LockSupport.java:118)
> [junit] at java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(AbstractQueuedSynchronizer.java:716)
> [junit] at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireQueued(AbstractQueuedSynchronizer.java:746)
> [junit] at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquire(AbstractQueuedSynchronizer.java:1076)
> [junit] at java.util.concurrent.locks.ReentrantReadWriteLock$NonfairSync.wlock(ReentrantReadWriteLock.java:342)
> [junit] at java.util.concurrent.locks.ReentrantReadWriteLock$WriteLock.lock(ReentrantReadWriteLock.java:637)
> [junit] at org.jboss.aop.Advisor.lockWriteChain(Advisor.java:1795)
> [junit] at org.jboss.aop.ClassAdvisor.lockWriteChains(ClassAdvisor.java:706)
> [junit] at org.jboss.aop.ClassAdvisor.doRebuildInterceptorsForAddedBinding(ClassAdvisor.java:1156)
> [junit] at org.jboss.aop.ClassAdvisor$RebuildInterceptorsAction$1$2.run(ClassAdvisor.java:2297)
> [junit] at java.security.AccessController.doPrivileged(Native Method)
> [junit] at org.jboss.aop.ClassAdvisor$RebuildInterceptorsAction$1.rebuildInterceptorsForAddedBinding(ClassAdvisor.java:2293)
> [junit] at org.jboss.aop.ClassAdvisor.rebuildInterceptorsForAddedBinding(ClassAdvisor.java:1143)
> [junit] at org.jboss.aop.GeneratedClassAdvisor.access$1501(GeneratedClassAdvisor.java:65)
> [junit] at org.jboss.aop.GeneratedClassAdvisor$ClassAdvisorStrategy.rebuildInterceptorsForAddedBinding(GeneratedClassAdvisor.java:1538)
> [junit] at org.jboss.aop.GeneratedClassAdvisor.rebuildInterceptorsForAddedBinding(GeneratedClassAdvisor.java:244)
> [junit] at org.jboss.aop.Advisor.newBindingAdded(Advisor.java:1124)
> [junit] - locked <0xadd75028> (a org.jboss.test.aop.rebuildingchain.ConstructorExecutionSyncThread$Pojo$ConstructorExecutionSyncThread$PojoAdvisor)
> [junit] at org.jboss.aop.AspectManager.updateAdvisorsForAddedBinding(AspectManager.java:1515)
> [junit] - locked <0xadd76870> (a java.util.WeakHashMap)
> [junit] at org.jboss.aop.AspectManager.updateAdvisorsForAddedBinding(AspectManager.java:1538)
> [junit] - locked <0x91c3aaa0> (a java.util.WeakHashMap)
> [junit] at org.jboss.aop.AspectManager.addBinding(AspectManager.java:1473)
> [junit] - locked <0x91bf58d8> (a java.util.WeakHashMap)
> [junit] at org.jboss.test.aop.rebuildingchain.RebuildThread.linkNewAdvice(RebuildThread.java:84)
> [junit] at org.jboss.test.aop.rebuildingchain.RebuildThread.run(RebuildThread.java:53)
> [junit]
> [junit] "Low Memory Detector" daemon prio=1 tid=0x8d60dbb0 nid=0x2292 runnable [0x00000000..0x00000000]
> [junit]
> [junit] "CompilerThread1" daemon prio=1 tid=0x8d60c7b0 nid=0x2291 waiting on condition [0x00000000..0x8d1fa018]
> [junit]
> [junit] "CompilerThread0" daemon prio=1 tid=0x8d60b810 nid=0x2290 waiting on condition [0x00000000..0x8d27b198]
> [junit]
> [junit] "AdapterThread" daemon prio=1 tid=0x8d60a840 nid=0x228f waiting on condition [0x00000000..0x00000000]
> [junit]
> [junit] "Signal Dispatcher" daemon prio=1 tid=0x8d609950 nid=0x228e waiting on condition [0x00000000..0x00000000]
> [junit]
> [junit] "Finalizer" daemon prio=1 tid=0x8d6004b0 nid=0x228c in Object.wait() [0x8d5fe000..0x8d5ff0b0]
> [junit] at java.lang.Object.wait(Native Method)
> [junit] - waiting on <0x91c21260> (a java.lang.ref.ReferenceQueue$Lock)
> [junit] at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:116)
> [junit] - locked <0x91c21260> (a java.lang.ref.ReferenceQueue$Lock)
> [junit] at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:132)
> [junit] at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:159)
> [junit]
> [junit] "Reference Handler" daemon prio=1 tid=0x0921f1a0 nid=0x228b in Object.wait() [0x8d79c000..0x8d79ce30]
> [junit] at java.lang.Object.wait(Native Method)
> [junit] - waiting on <0x91c249e0> (a java.lang.ref.Reference$Lock)
> [junit] at java.lang.Object.wait(Object.java:474)
> [junit] at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:116)
> [junit] - locked <0x91c249e0> (a java.lang.ref.Reference$Lock)
> [junit]
> [junit] "main" prio=1 tid=0x09179988 nid=0x2285 in Object.wait() [0xbfd97000..0xbfd97d68]
> [junit] at java.lang.Object.wait(Native Method)
> [junit] - waiting on <0xadfc0540> (a org.jboss.test.aop.rebuildingchain.RebuildThread)
> [junit] at java.lang.Thread.join(Thread.java:1095)
> [junit] - locked <0xadfc0540> (a org.jboss.test.aop.rebuildingchain.RebuildThread)
> [junit] at java.lang.Thread.join(Thread.java:1148)
> [junit] at org.jboss.test.aop.rebuildingchain.RebuildingChainTestCase.assertRebuildingChainWithJoin(RebuildingChainTestCase.java:237)
> [junit] at org.jboss.test.aop.rebuildingchain.RebuildingChainTestCase.testConstructorExecutionWithJoin(RebuildingChainTestCase.java:115)
> [junit] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> [junit] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> [junit] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> [junit] at java.lang.reflect.Method.invoke(Method.java:585)
> [junit] at junit.framework.TestCase.runTest(TestCase.java:154)
> [junit] at junit.framework.TestCase.runBare(TestCase.java:127)
> [junit] at junit.framework.TestResult$1.protect(TestResult.java:106)
> [junit] at junit.framework.TestResult.runProtected(TestResult.java:124)
> [junit] at junit.framework.TestResult.run(TestResult.java:109)
> [junit] at junit.framework.TestCase.run(TestCase.java:118)
> [junit] at junit.framework.TestSuite.runTest(TestSuite.java:208)
> [junit] at junit.framework.TestSuite.run(TestSuite.java:203)
> [junit] at junit.framework.TestSuite.runTest(TestSuite.java:208)
> [junit] at junit.framework.TestSuite.run(TestSuite.java:203)
> [junit] at org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.run(JUnitTestRunner.java:421)
> [junit] at org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.launch(JUnitTestRunner.java:912)
> [junit] at org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.main(JUnitTestRunner.java:766)
> [junit]
> [junit] "VM Thread" prio=1 tid=0x0921cc68 nid=0x228a runnable
> [junit]
> [junit] "GC task thread#0 (ParallelGC)" prio=1 tid=0x09193a78 nid=0x2288 runnable
> [junit]
> [junit] "GC task thread#1 (ParallelGC)" prio=1 tid=0x091946c8 nid=0x2289 runnable
> [junit]
> [junit] "VM Periodic Task Thread" prio=1 tid=0x8d60f748 nid=0x2293 waiting on condition
> [junit]
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
More information about the jboss-jira
mailing list