Details
-
Bug
-
Resolution: Won't Do
-
Major
-
None
-
9.1.0.Final
-
None
Description
If cache.remove(k) is called on non-existent key, it should become a no-op, marking the command as unsuccessful, not writing the cache store and not replicating the change to backup owners. That makes the command effectively conditional (as it checks previous value), in the same way as cache.replace(k, newValue) is.
While I think that this is the correct behaviour, it's a breaking change for transactions. Some transactions may become read-only and there are multiple tests in the testsuite that would be broken by this.