[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