Pedro Ruivo created ISPN-8533:
---------------------------------
Summary: Deadlock in pessimistic transaction
Key: ISPN-8533
URL:
https://issues.jboss.org/browse/ISPN-8533
Project: Infinispan
Issue Type: Bug
Reporter: Pedro Ruivo
Assignee: Pedro Ruivo
Deadlock can happen (not sure how) during a topology change and pessimistic transaction.
2 transaction can end up in the pending lock manager and they will wait for each other to
finish.
{noformat}
Caused by: org.infinispan.util.concurrent.TimeoutException: Could not acquire lock on xxxx
in behalf of transaction GlobalTx:node-a:3746. Current owner GlobalTx:node-b:3629.
at
org.infinispan.util.concurrent.locks.impl.DefaultPendingLockManager.timeout(DefaultPendingLockManager.java:262)
~[infinispan-embedded-9.1.2.Final.jar:9.1.2.Final]
at
org.infinispan.util.concurrent.locks.impl.DefaultPendingLockManager.awaitOn(DefaultPendingLockManager.java:345)
~[infinispan-embedded-9.1.2.Final.jar:9.1.2.Final]
at
org.infinispan.util.concurrent.locks.impl.DefaultPendingLockManager.awaitPendingTransactionsForAllKeys(DefaultPendingLockManager.java:147)
~[infinispan-embedded-9.1.2.Final.jar:9.1.2.Final]
at
org.infinispan.interceptors.locking.AbstractTxLockingInterceptor.checkPendingAndLockAllKeys(AbstractTxLockingInterceptor.java:166)
~[infinispan-embedded-9.1.2.Final.jar:9.1.2.Final]
at
org.infinispan.interceptors.locking.AbstractTxLockingInterceptor.lockAllOrRegisterBackupLock(AbstractTxLockingInterceptor.java:134)
~[infinispan-embedded-9.1.2.Final.jar:9.1.2.Final]
at
org.infinispan.interceptors.locking.PessimisticLockingInterceptor.localLockCommandWork(PessimisticLockingInterceptor.java:234)
~[infinispan-embedded-9.1.2.Final.jar:9.1.2.Final]
at
org.infinispan.interceptors.locking.PessimisticLockingInterceptor.lambda$new$0(PessimisticLockingInterceptor.java:41)
~[infinispan-embedded-9.1.2.Final.jar:9.1.2.Final]
{noformat}
{noformat}
Caused by: org.infinispan.util.concurrent.TimeoutException: Could not acquire lock on xxxx
in behalf of transaction GlobalTx:node-b:3629. Current
owner GlobalTx:node-a:3746.
at
org.infinispan.util.concurrent.locks.impl.DefaultPendingLockManager.timeout(DefaultPendingLockManager.java:262)
~[infinispan-embedded-9.1.2.Final.jar:9.1.2.Final]
at
org.infinispan.util.concurrent.locks.impl.DefaultPendingLockManager.awaitOn(DefaultPendingLockManager.java:345)
~[infinispan-embedded-9.1.2.Final.jar:9.1.2.Final]
at
org.infinispan.util.concurrent.locks.impl.DefaultPendingLockManager.awaitPendingTransactionsForAllKeys(DefaultPendingLockManager.java:147)
~[infinispan-embedded-9.1.2.Final.
jar:9.1.2.Final]
at
org.infinispan.interceptors.locking.AbstractTxLockingInterceptor.checkPendingAndLockAllKeys(AbstractTxLockingInterceptor.java:166)
~[infinispan-embedded-9.1.2.Final.jar:9.1.2.Final]
at
org.infinispan.interceptors.locking.AbstractTxLockingInterceptor.lockAllOrRegisterBackupLock(AbstractTxLockingInterceptor.java:134)
~[infinispan-embedded-9.1.2.Final.jar:9.1.2.Final]
at
org.infinispan.interceptors.locking.PessimisticLockingInterceptor.localLockCommandWork(PessimisticLockingInterceptor.java:234)
~[infinispan-embedded-9.1.2.Final.jar:9.1.2.Final]
at
org.infinispan.interceptors.locking.PessimisticLockingInterceptor.lambda$new$0(PessimisticLockingInterceptor.java:41)
~[infinispan-embedded-9.1.2.Final.jar:9.1.2.Final]
{noformat}
notes: confirm the pending lock manager is cleanup!
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)