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

Touch command should be sent to all write owners

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Unresolved
    • Icon: Major Major
    • None
    • 12.1.5.Final, 13.0.0.Final
    • Core
    • None
    • Undefined

      During state transfer, new owners are only write owners, and they do not receive remote get commands or touch commands.

      This means a key can expire too early in a scenario like this:

      1. A owns k=v with max-idle=10000, last-access=0
      2. state transfer starts, read-owners=A, write-owners=AB
      3. A sends to B entry k=v with last-access=0
      4. get(k) updates last-access=9000 on A but not on B
      5. state transfer ends, read-owners=write-owners=AB
      6. rebalance ends, read-owners=write-owners=B
      7. get(k) at timestamp 11000 finds k=v has expired and removes it

      Touch commands are more like writes than reads, so they should be sent to both read and write-only owners.

              Unassigned Unassigned
              dberinde@redhat.com Dan Berindei (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

                Created:
                Updated: