]
Dan Berindei resolved ISPN-5250.
--------------------------------
Fix Version/s: 8.0.0.Final
Resolution: Done
ISPN-5643 clarified that {{SKIP_REMOTE_LOOKUP}} must not be used with any operations that
need the previous value and that {{IGNORE_RETURN_VALUES}} should be used instead.
Semantics of write-skew configured cache undefined with flag
SKIP_REMOTE_LOOKUP
-------------------------------------------------------------------------------
Key: ISPN-5250
URL:
https://issues.redhat.com/browse/ISPN-5250
Project: Infinispan
Issue Type: Bug
Components: Core
Affects Versions: 7.1.0.Final
Reporter: Erik Salter
Priority: Major
Fix For: 8.0.0.Final
The semantics of how a write-skew cache should behave with the SKIP_REMOTE_LOOKUP flag
are currently undefined. For instance, if a RemoveCommand (cache.remove(key)) is invoked
on a write-skew-enabled cache with the SKIP_REMOTE_LOOKUP flag, the operation will fail
with a WriteSkewException. In this setting, the expectation is that the flag will bypass
any write-skew check and simply remove the key without the network cost of returning the
object.
While this flag may not make sense with conditional commands, with others it could be
interpreted as "I don't care about the previous value". So maybe we should
skip the write-skew check and simply return the current version -- perhaps log something
if the flag is used with a conditional command?