[infinispan-issues] [JBoss JIRA] (ISPN-2081) Transaction leak caused by reordering between prepare and commit

Mircea Markus (JIRA) jira-events at lists.jboss.org
Thu May 31 13:42:17 EDT 2012


Mircea Markus created ISPN-2081:
-----------------------------------

             Summary: Transaction leak caused by reordering between prepare and commit
                 Key: ISPN-2081
                 URL: https://issues.jboss.org/browse/ISPN-2081
             Project: Infinispan
          Issue Type: Bug
          Components: Transactions
    Affects Versions: 5.1.5.FINAL
            Reporter: Mircea Markus
            Assignee: Mircea Markus
             Fix For: 5.2.0.ALPHA1, 5.2.0.FINAL
         Attachments: RollbackNotSentBeforePrepareTest.java

There's no ordering between the prepare and commit/rollback messages, as the later are sent OOB.
With this in mind, the following transaction leak might happen:
Tx1 send prepare on nodes {A,B}
1. the message reaches A and timeouts but hasn't yet been processed on B
2. The transaction originator reacts immediately to the timeout received from A without waiting the response from B and sends a rollback request
3. The rollback request is processed on A and B 
4. The initial prepare is then processed on B

At this point we have an orphan transaction prepare on B.
Whilst this is not causing any inconsistencies, it keeps keys locked indefinitely and is a memory leak.  

The solution would be to wait at 2 for all the prepare messages *before* sending the rollback.
Attached is a unit test to reproduce the issue.

Related mailing list thread: http://infinispan.markmail.org/search/#query:%20list%3Aorg.jboss.lists.infinispan-dev+page:1+mid:xgnmtee56jpqifs6+state:results  

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.jboss.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        


More information about the infinispan-issues mailing list