Your logs should contain exception with stack trace that looks like piece of log bellow. You can try find "TransactionDeadlockException" or "Deadlock detected" patterns in log.
javax.cache.CacheException: class org.apache.ignite.transactions.TransactionTimeoutException: Failed to acquire lock within provided timeout for transaction [timeout=800, tx=org.apache.ignite.internal.processors.cache.transactions.IgniteTxLocalAdapter$10@647b61d9] at org.apache.ignite.internal.processors.cache.GridCacheUtils.convertToCacheException(GridCacheUtils.java:1440) at org.apache.ignite.internal.processors.cache.IgniteCacheProxy.cacheException(IgniteCacheProxy.java:2183) at org.apache.ignite.internal.processors.cache.IgniteCacheProxy.putAll(IgniteCacheProxy.java:1430) at org.apache.ignite.internal.processors.cache.transactions.TxPessimisticDeadlockDetectionTest$1.run(TxPessimisticDeadlockDetectionTest.java:322) at org.apache.ignite.testframework.GridTestUtils$8.call(GridTestUtils.java:1092) at org.apache.ignite.testframework.GridTestThread.run(GridTestThread.java:86) Suppressed: class org.apache.ignite.IgniteException: Transaction has been already completed. at org.apache.ignite.internal.util.IgniteUtils.convertException(IgniteUtils.java:924) at org.apache.ignite.internal.processors.cache.transactions.TransactionProxyImpl.close(TransactionProxyImpl.java:279) at org.apache.ignite.internal.processors.cache.transactions.TxPessimisticDeadlockDetectionTest$1.run(TxPessimisticDeadlockDetectionTest.java:325) ... 2 more Caused by: class org.apache.ignite.IgniteCheckedException: Transaction has been already completed. at org.apache.ignite.internal.processors.cache.transactions.IgniteTxHandler.finishDhtLocal(IgniteTxHandler.java:786) at org.apache.ignite.internal.processors.cache.transactions.IgniteTxHandler.finish(IgniteTxHandler.java:728) at org.apache.ignite.internal.processors.cache.transactions.IgniteTxHandler.processNearTxFinishRequest(IgniteTxHandler.java:687) at org.apache.ignite.internal.processors.cache.transactions.IgniteTxHandler$3.apply(IgniteTxHandler.java:157) at org.apache.ignite.internal.processors.cache.transactions.IgniteTxHandler$3.apply(IgniteTxHandler.java:155) at org.apache.ignite.internal.processors.cache.GridCacheIoManager.processMessage(GridCacheIoManager.java:827) at org.apache.ignite.internal.processors.cache.GridCacheIoManager.onMessage0(GridCacheIoManager.java:369) at org.apache.ignite.internal.processors.cache.GridCacheIoManager.handleMessage(GridCacheIoManager.java:293) at org.apache.ignite.internal.processors.cache.GridCacheIoManager.access$000(GridCacheIoManager.java:95) at org.apache.ignite.internal.processors.cache.GridCacheIoManager$1.onMessage(GridCacheIoManager.java:238) at org.apache.ignite.internal.managers.communication.GridIoManager.invokeListener(GridIoManager.java:1082) at org.apache.ignite.internal.managers.communication.GridIoManager.processRegularMessage0(GridIoManager.java:710) at org.apache.ignite.internal.managers.communication.GridIoManager.access$1700(GridIoManager.java:102) at org.apache.ignite.internal.managers.communication.GridIoManager$5.run(GridIoManager.java:673) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) at java.lang.Thread.run(Thread.java:745) Caused by: class org.apache.ignite.transactions.TransactionTimeoutException: Failed to acquire lock within provided timeout for transaction [timeout=800, tx=org.apache.ignite.internal.processors.cache.transactions.IgniteTxLocalAdapter$10@647b61d9] at org.apache.ignite.internal.util.IgniteUtils$13.apply(IgniteUtils.java:831) at org.apache.ignite.internal.util.IgniteUtils$13.apply(IgniteUtils.java:828) ... 6 more Caused by: class org.apache.ignite.transactions.TransactionDeadlockException: Deadlock detected: K1: TX1 holds lock, TX2 waits lock. K2: TX3 holds lock, TX1 waits lock. K3: TX2 holds lock, TX3 waits lock. Transactions: TX1 [txId=GridCacheVersion [topVer=100472269, time=1488992349410, order=1488992271778, nodeOrder=5], nodeId=52c630e7-3b59-4d58-9291-dd8bd9e00004, threadId=637] TX2 [txId=GridCacheVersion [topVer=100472269, time=1488992349410, order=1488992271778, nodeOrder=6], nodeId=652f18b9-8948-4d66-a1a8-f45346c00005, threadId=636] TX3 [txId=GridCacheVersion [topVer=100472269, time=1488992349410, order=1488992271806, nodeOrder=4], nodeId=5810f06c-f9a5-40b2-91ec-e9ec97a00003, threadId=635] Keys: K1 [key=3, cache=cache] K2 [key=2, cache=cache] K3 [key=1, cache=cache] at org.apache.ignite.internal.processors.cache.distributed.dht.colocated.GridDhtColocatedLockFuture$LockTimeoutObject$1.apply(GridDhtColocatedLockFuture.java:1355) at org.apache.ignite.internal.processors.cache.distributed.dht.colocated.GridDhtColocatedLockFuture$LockTimeoutObject$1.apply(GridDhtColocatedLockFuture.java:1349) at org.apache.ignite.internal.util.future.GridFutureAdapter.notifyListener(GridFutureAdapter.java:264) at org.apache.ignite.internal.util.future.GridFutureAdapter.notifyListeners(GridFutureAdapter.java:252) at org.apache.ignite.internal.util.future.GridFutureAdapter.onDone(GridFutureAdapter.java:382) at org.apache.ignite.internal.util.future.GridFutureAdapter.onDone(GridFutureAdapter.java:348) at org.apache.ignite.internal.processors.cache.transactions.TxDeadlockDetection$TxDeadlockFuture.onDone(TxDeadlockDetection.java:537) at org.apache.ignite.internal.processors.cache.transactions.TxDeadlockDetection$TxDeadlockFuture.onDone(TxDeadlockDetection.java:158) at org.apache.ignite.internal.util.future.GridFutureAdapter.onDone(GridFutureAdapter.java:325) at org.apache.ignite.internal.processors.cache.transactions.TxDeadlockDetection$TxDeadlockFuture.detect(TxDeadlockDetection.java:313) at org.apache.ignite.internal.processors.cache.transactions.TxDeadlockDetection$TxDeadlockFuture.onResult(TxDeadlockDetection.java:513) at org.apache.ignite.internal.processors.cache.transactions.IgniteTxManager$DeadlockDetectionListener.onMessage(IgniteTxManager.java:2525) at org.apache.ignite.internal.managers.communication.GridIoManager.invokeListener(GridIoManager.java:1082) at org.apache.ignite.internal.managers.communication.GridIoManager.processRegularMessage0(GridIoManager.java:710) at org.apache.ignite.internal.managers.communication.GridIoManager.access$1700(GridIoManager.java:102) at org.apache.ignite.internal.managers.communication.GridIoManager$5.run(GridIoManager.java:673) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) at java.lang.Thread.run(Thread.java:745) On Wed, Mar 8, 2017 at 12:32 AM, bintisepaha <binti.sep...@tudor.com> wrote: > Could you please tell us what the logs would say if there was a deadlock? > we rollback the txn on any exception explicitly. > > We are running 1.8 in UAT environment this week. It is not a simple upgrade > to production, we need to let it burn in. But in UAT we never saw this issue > with 1.7 either. It already happened in production, so far 3 times. > > > > -- > View this message in context: > http://apache-ignite-users.70518.x6.nabble.com/Pessimistic-TXN-did-not-release-lock-on-a-key-all-subsequent-txns-failed-tp10536p11064.html > Sent from the Apache Ignite Users mailing list archive at Nabble.com.