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

Remove-inconsistency during NBST

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Done
    • Icon: Blocker Blocker
    • 5.2.0.Beta6
    • 5.2.0.Alpha3
    • State Transfer
    • None

      The NBST functionality leaves place to inconsistencies during removals:
      1. the joiner first requests transaction data
      2. after all transaction data is integrated (i.e. tx is prepared on the state receiver node) it requests the rest(data container) of the data
      3. in order not to override the data from transactions which is more recent (transactions at step 1 might commit during step 2), the insertion at 2 happens with putIfAbsent. Whilst this prevents from overriding newer values (written by transactions), it doesn't guard against the situation in which the tx at step 1 removed data. So it is possible for deleted data a to resurrect.

      A solution to this inconsistency issue is to use tombstones for the duration of the state transfer.

            anistor Adrian Nistor (Inactive)
            mircea.markus Mircea Markus (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: