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

Stale values can be indexed during State Transfer

This issue belongs to an archived project. You can view it, but you can't modify it. Learn more

    • Icon: Bug Bug
    • Resolution: Done
    • Icon: Major Major
    • 12.1.0.Final
    • 10.1.1.Final, 11.0.0.Alpha1
    • Core
    • None

      If an operation is discarded during state transfer because it was already modified locally, the QueryInterceptor still propagates it to the index, leaving the index out of sync.

      Sequence of events:

      • T1: State Transfer starts
      • T2: The EWI (EntryWrappingInterceptor) starts tracking all non-state-transfer operations
      • T3: An entry is added locally
      • T4: EWI stores the key
      • T5: The same key arrives from State Transfer
      • T6: QueryInterceptor indexes it (The QI is installed after EWI but indexing happens before storing the entry in the data container)
      • T7: The entry operation is not committed in the data container since it was tracked before as DiscardPolicy {discardStateTransfer=true, discardXSiteStateTransfer=false}
      • T8: The index and the data container differ, since the index applied the state transfer operation when the data container didn't

              gfernand@redhat.com Gustavo Fernandes (Inactive)
              gfernand@redhat.com Gustavo Fernandes (Inactive)
              Archiver:
              rhn-support-adongare Amol Dongare

                Created:
                Updated:
                Resolved:
                Archived: