[infinispan-issues] [JBoss JIRA] (ISPN-6668) Deadlock when a prepare command is retried
Brad Maxwell (JIRA)
issues at jboss.org
Wed May 18 20:18:00 EDT 2016
Brad Maxwell created ISPN-6668:
----------------------------------
Summary: Deadlock when a prepare command is retried
Key: ISPN-6668
URL: https://issues.jboss.org/browse/ISPN-6668
Project: Infinispan
Issue Type: Bug
Components: Core
Affects Versions: 8.1.0.Final
Reporter: Brad Maxwell
Assignee: Pedro Ruivo
Fix For: 8.2.0.CR1, 8.1.4.Final
Looks like the ISPN-5623 fix went too far, and now I found a test failure with the opposite behaviour:
1. Remote prepare for {{txA}} acquires lock {{K}}
2. Remote prepare for {{txB}} blocks waiting for lock {{K}}
3. The topology changes, and the {{txA}} prepare is retried
4. The {{txA}} prepare times out, because it waits for pending transaction {{txB}} to finish.
So we have to make {{txA}} somehow know that it already has the lock after it received an {{UnsureResponse}} for the prepare command, and skip waiting for pending transactions.
I found the problem in a random failure of {{DistributedFourNodesMapReduceTest}} on a local branch, but I'm not sure if my local changes (making SyncCHF the default CH factory) made it more likely.
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)
More information about the infinispan-issues
mailing list