[infinispan-issues] [JBoss JIRA] (ISPN-2316) Distributed deadlock in StateTransferInterceptor
Radim Vansa (JIRA)
jira-events at lists.jboss.org
Tue Sep 18 08:21:34 EDT 2012
Radim Vansa created ISPN-2316:
---------------------------------
Summary: Distributed deadlock in StateTransferInterceptor
Key: ISPN-2316
URL: https://issues.jboss.org/browse/ISPN-2316
Project: Infinispan
Issue Type: Feature Request
Components: State transfer, Transactions
Affects Versions: 5.2.0.Alpha3
Reporter: Radim Vansa
Assignee: Mircea Markus
When using transactions, a distributed deadlock may occur when a node is joining under these circumstances:
1) the new node requests transactions using GET_TRANSACTIONS
2) the old node tries to commit a transaction, broadcasting PrepareCommand - in StateTransferIntreceptor it locks the transactionLock in shared way
3) the request GET_TRANSACTIONS comes on the new node, the node is waiting for the transactionLock (it requires it exclusively)
4) transaction commit on new node is somehow delayed (for one minute) in the interceptor chain between InvocationContextInterceptor and OptimisticLockingInterceptor (it looks like the only place is waiting for StateTransferInterceptor transactionLock (shared), however, I cannot find any trace that it is held by anyone)
After the transaction commit times out on old node releasing the lock, the GET_TRANSACTION request may continue, but the state transfer itself can also timeout if not set properly longer.
Note that the transaction commit continues on the new node after the ST times out, until it is found invalid (rolled back).
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
More information about the infinispan-issues
mailing list