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

Mixing sync and async commands results in missing locking on backup owners

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Obsolete
    • Icon: Major Major
    • None
    • 8.0.0.Final
    • Core
    • None

      In non-tx synchronous cache, locking on backup owners relies on having lock on primary owner held while the command is invoked on backup owner.

      In non-tx asynchronous cache, the order in which updates are applied relies again on primary owner, but then the updates to backup owners are propagated as ordered.

      When you mix it using FORCE_ASYNCHRONOUS flag, it's broken, e.g. in synchronous cache, you send the command to primary owner (that's fine), but then you replicate it to backups without the lock being held. That update can come in different order and even concurrently with synchronous update, and on backup owner the lock is not acquired. This can be problematic especially for conditional updates.

            Unassigned Unassigned
            rvansa1@redhat.com Radim Vansa (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved: