[
https://jira.jboss.org/jira/browse/JBAOP-630?page=com.atlassian.jira.plug...
]
Flavia Rainone reopened JBAOP-630:
----------------------------------
Current fix for this bug may cause deadlock with the transformation step, as the
getPerVMAspect uses the same lock as the transformation process (AspectManager
instance's lock).
Deadlock in beforeafter tutorial example
----------------------------------------
Key: JBAOP-630
URL:
https://jira.jboss.org/jira/browse/JBAOP-630
Project: JBoss AOP
Issue Type: Bug
Security Level: Public(Everyone can see)
Affects Versions: 2.0.0.CR16
Reporter: Flavia Rainone
Assignee: Flavia Rainone
Fix For: 2.0.0.GA
Attachments: deadlock.txt
There is a deadlock occuring in this example:
[java] Full thread dump Java HotSpot(TM) Server VM (1.5.0_12-b04 mixed mode):
[java]
[java] "DEPOSIT: A R$ 50,00" prio=1 tid=0x8c9a34e0 nid=0x3301 in
Object.wait() [0x8c77b000..0x8c77c0b0]
[java] at java.lang.Object.wait(Native Method)
[java] - waiting on <0xade15de0> (a java.lang.Object)
[java] at java.lang.Object.wait(Object.java:474)
[java] at MutexAspect.beforeAdvice(MutexAspect.java:40)
[java] - locked <0xade15de0> (a java.lang.Object)
[java] at
JoinPoint_run_N_8003352271541955702_1.invokeJoinpoint(JoinPoint_run_N_8003352271541955702_1.java)
[java] at
Deposit$DepositAdvisor.run_N_8003352271541955702(Deposit$DepositAdvisor.java)
[java] at Deposit.run(Transaction.java)
[java] at java.lang.Thread.run(Thread.java:595)
[java]
[java] "Low Memory Detector" daemon prio=1 tid=0x8c902888 nid=0x32ff
runnable [0x00000000..0x00000000]
[java]
[java] "CompilerThread1" daemon prio=1 tid=0x8c901488 nid=0x32fe waiting
on condition [0x00000000..0x8c8fe198]
[java]
[java] "CompilerThread0" daemon prio=1 tid=0x8c9004e8 nid=0x32fd waiting
on condition [0x00000000..0x8cafe018]
[java]
[java] "AdapterThread" daemon prio=1 tid=0x09598238 nid=0x32fc waiting on
condition [0x00000000..0x00000000]
[java]
[java] "Signal Dispatcher" daemon prio=1 tid=0x095b9818 nid=0x32fb waiting
on condition [0x00000000..0x00000000]
[java]
[java] "Finalizer" daemon prio=1 tid=0x0949e6c0 nid=0x32fa in
Object.wait() [0x8d68b000..0x8d68be30]
[java] at java.lang.Object.wait(Native Method)
[java] - waiting on <0xae2fd4c0> (a java.lang.ref.ReferenceQueue$Lock)
[java] at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:116)
[java] - locked <0xae2fd4c0> (a java.lang.ref.ReferenceQueue$Lock)
[java] at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:132)
[java] at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:159)
[java]
[java] "Reference Handler" daemon prio=1 tid=0x0949cfe0 nid=0x32f9 in
Object.wait() [0x8d70c000..0x8d70d0b0]
[java] at java.lang.Object.wait(Native Method)
[java] - waiting on <0xae2ae7a0> (a java.lang.ref.Reference$Lock)
[java] at java.lang.Object.wait(Object.java:474)
[java] at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:116)
[java] - locked <0xae2ae7a0> (a java.lang.ref.Reference$Lock)
[java]
[java] "main" prio=1 tid=0x093f7838 nid=0x32f2 in Object.wait()
[0xbfe36000..0xbfe36268]
[java] at java.lang.Object.wait(Native Method)
[java] - waiting on <0xae284760> (a java.lang.Thread)
[java] at java.lang.Thread.join(Thread.java:1095)
[java] - locked <0xae284760> (a java.lang.Thread)
[java] at java.lang.Thread.join(Thread.java:1148)
[java] at Driver.main(Driver.java:69)
[java]
[java] "VM Thread" prio=1 tid=0x0949aaa8 nid=0x32f8 runnable
[java]
[java] "GC task thread#0 (ParallelGC)" prio=1 tid=0x094118b8 nid=0x32f6
runnable
[java]
[java] "GC task thread#1 (ParallelGC)" prio=1 tid=0x09412508 nid=0x32f7
runnable
[java]
[java] "VM Periodic Task Thread" prio=1 tid=0x8c904450 nid=0x3300 waiting
on condition
--
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