Found one Java-level deadlock: ============================= "Transaction Reaper Worker 4": waiting for ownable synchronizer 0x00002aab69bc03a8, (a java.util.concurrent.locks.ReentrantLock$FairSync), which is held by "pool-1-thread-583" "pool-1-thread-583": waiting to lock monitor 0x0000000054462ac8 (object 0x00002aab69bed310, a com.arjuna.ats.internal.jta.transaction.arjunacore.AtomicAction), which is held by "Transaction Reaper Worker 4" Java stack information for the threads listed above: =================================================== "Transaction Reaper Worker 4": at sun.misc.Unsafe.park(Native Method) - parking to wait for <0x00002aab69bc03a8> (a java.util.concurrent.locks.ReentrantLock$FairSync) 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$FairSync.lock(ReentrantLock.java:201) at java.util.concurrent.locks.ReentrantLock.lock(ReentrantLock.java:262) at org.jboss.resource.adapter.jdbc.BaseWrapperManagedConnection.lock(BaseWrapperManagedConnection.java:253) at org.jboss.resource.adapter.jdbc.local.LocalManagedConnection.rollback(LocalManagedConnection.java:87) at org.jboss.resource.connectionmanager.TxConnectionManager$LocalXAResource.rollback(TxConnectionManager.java:1172) at com.arjuna.ats.internal.jta.resources.arjunacore.XAOnePhaseResource.rollback(XAOnePhaseResource.java:186) at com.arjuna.ats.internal.arjuna.abstractrecords.LastResourceRecord.topLevelAbort(LastResourceRecord.java:123) at com.arjuna.ats.arjuna.coordinator.BasicAction.doAbort(BasicAction.java:2902) at com.arjuna.ats.arjuna.coordinator.BasicAction.doAbort(BasicAction.java:2881) at com.arjuna.ats.arjuna.coordinator.BasicAction.Abort(BasicAction.java:1602) - locked <0x00002aab69bed310> (a com.arjuna.ats.internal.jta.transaction.arjunacore.AtomicAction) at com.arjuna.ats.arjuna.coordinator.TwoPhaseCoordinator.cancel(TwoPhaseCoordinator.java:119) at com.arjuna.ats.arjuna.AtomicAction.cancel(AtomicAction.java:212) at com.arjuna.ats.arjuna.coordinator.TransactionReaper.doCancellations(TransactionReaper.java:367) at com.arjuna.ats.internal.arjuna.coordinator.ReaperWorkerThread.run(ReaperWorkerThread.java:79) "pool-1-thread-583": at com.arjuna.ats.arjuna.coordinator.BasicAction.Abort(BasicAction.java:1559) - waiting to lock <0x00002aab69bed310> (a com.arjuna.ats.internal.jta.transaction.arjunacore.AtomicAction) at com.arjuna.ats.arjuna.coordinator.TwoPhaseCoordinator.cancel(TwoPhaseCoordinator.java:119) at com.arjuna.ats.arjuna.AtomicAction.abort(AtomicAction.java:183) at com.arjuna.ats.internal.jta.transaction.arjunacore.TransactionImple.rollbackAndDisassociate(TransactionImple.java:1240) at com.arjuna.ats.internal.jta.transaction.arjunacore.BaseTransaction.rollback(BaseTransaction.java:136) at com.arjuna.ats.jbossatx.BaseTransactionManagerDelegate.rollback(BaseTransactionManagerDelegate.java:114) at org.jboss.tm.usertx.client.ServerVMClientUserTransaction.rollback(ServerVMClientUserTransaction.java:170) at org.springframework.transaction.jta.JtaTransactionManager.doRollback(JtaTransactionManager.java:1036) at org.springframework.transaction.support.AbstractPlatformTransactionManager.processRollback(AbstractPlatformTransactionManager.java:845) at org.springframework.transaction.support.AbstractPlatformTransactionManager.rollback(AbstractPlatformTransactionManager.java:822) at org.springframework.transaction.interceptor.TransactionAspectSupport.completeTransactionAfterThrowing(TransactionAspectSupport.java:411) at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:114) at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172) at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:202) at $Proxy279.processPoints(Unknown Source) at ru.csbi.transport.gwtapp.server.equipment.PointProcessingOptimizer$Transport.runWork(PointProcessingOptimizer.java:499) at ru.csbi.transport.datacomm.work.WorkManagerWrapperJca$1.run(WorkManagerWrapperJca.java:59) at org.jboss.resource.work.WorkWrapper.run(WorkWrapper.java:172) at org.jboss.threads.SimpleDirectExecutor.execute(SimpleDirectExecutor.java:33) at org.jboss.threads.QueueExecutor.runTask(QueueExecutor.java:801) at org.jboss.threads.QueueExecutor.access$100(QueueExecutor.java:45) at org.jboss.threads.QueueExecutor$Worker.run(QueueExecutor.java:842) at java.lang.Thread.run(Thread.java:662) at org.jboss.threads.JBossThread.run(JBossThread.java:122) Found 1 deadlock.