[infinispan-issues] [JBoss JIRA] (ISPN-3556) When LockControlCommand fails on an owner, the rollback command is not sent

Dan Berindei (JIRA) jira-events at lists.jboss.org
Thu Sep 26 06:22:02 EDT 2013


Dan Berindei created ISPN-3556:
----------------------------------

             Summary: When LockControlCommand fails on an owner, the rollback command is not sent
                 Key: ISPN-3556
                 URL: https://issues.jboss.org/browse/ISPN-3556
             Project: Infinispan
          Issue Type: Bug
          Components: Locking and Concurrency
    Affects Versions: 6.0.0.Beta1, 5.3.0.Final, 5.2.7.Final
            Reporter: Dan Berindei
            Assignee: Dan Berindei
            Priority: Critical
             Fix For: 6.0.0.Beta2


If a transaction starts with a {{lock()}} operation and the lock fails on one of the owners (e.g. because of a {{SuspectException}}), the rollback command should still be sent to all the live owners.

However, because a locked key is only registered in the {{affectedKeys}} collection after a successful lock operation (in {{PessimisticLockingInterceptor.acquireRemoteIfNeeded()}}, the rollback command is not sent to any owners.

This is in a pessimistic cache. However, looking at the {{OptimisticLockingInterceptor.acquireAllLocks()}} code I think I see a similar problem: it's possible that a key is locked, but the write skew check fails and the key is not added to the {{affectedKeys}} collection. We should always register the key first and attempt to lock it after.

--
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