-
Bug
-
Resolution: Done
-
Blocker
-
5.2.0.Final
-
None
I have a replicated cache with locking mode set to PESSIMISTIC on which I use explicit locking before putting some value.
After nodes have left the cluster, this does not work anymore and I get TimeoutExceptions like:
2012-11-02 11:14:12,057 ERROR [InvocationContextInterceptor] (LockAfterNodesLeftTest.Putter-0) ISPN000136: Execution error org.infinispan.util.concurrent.TimeoutException: Could not acquire lock on key on behalf of transaction GlobalTransaction:<NodeA-31597>:4:local. Lock is being held by GlobalTransaction:<NodeA-31597>:4:local at org.infinispan.interceptors.locking.AbstractTxLockingInterceptor.newTimeoutException(AbstractTxLockingInterceptor.java:230) at org.infinispan.interceptors.locking.AbstractTxLockingInterceptor.waitForTransactionsToComplete(AbstractTxLockingInterceptor.java:210) at org.infinispan.interceptors.locking.AbstractTxLockingInterceptor.lockKeyAndCheckOwnership(AbstractTxLockingInterceptor.java:175) at org.infinispan.interceptors.locking.PessimisticLockingInterceptor.visitPutKeyValueCommand(PessimisticLockingInterceptor.java:120)
This can be reproduced with the attached unit test.
(Use NUM_NODES_TO_STOP_FOR_TEST=0 to not stop any nodes - the test succeeds in that case)
- is incorporated by
-
ISPN-2472 Transactional commands should not be forwarded to the tx originator
- Closed