Uploaded image for project: 'Infinispan'
  1. Infinispan
  2. ISPN-3500

Conditional operation can generate inconsistencies in transactional mode

    XMLWordPrintable

Details

    • Bug
    • Status: Closed (View Workflow)
    • Major
    • Resolution: Done
    • 5.3.0.Final, 6.0.0.Alpha4
    • 6.0.0.Beta1, 6.0.0.Final
    • None
    • None

    Description

      conditional operation can be applied in the backup nodes. consider the following scenario:

      k=v1
      
      tx1: write on key k value v2
      tx1: prepare and sends the commit... primary owner already applied v2
      tx2: [replace(k, v1, v3)] starts and reads from primary owner v2. ignoreReturnValue is false because the operation has failed to change k.
      tx2: sends the prepare. in the backup owner, if perform oldValue.equals(value). however, the oldValue == v1 and value == v1.
      

      the operation changed the key in the backup owner creating inconsistency.

      Attachments

        Activity

          People

            pruivo@redhat.com Pedro Ruivo
            pruivo@redhat.com Pedro Ruivo
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: