-
Bug
-
Resolution: Done
-
Major
-
8.0.0.Beta2
-
None
For a mortal entry (lifespan > -1), overwriting it with lifespan=-1 (make it immortal) unexpectedly removes the entry like follows.
~~~
cache.put(key, "value1", 100, TimeUnit.SECONDS, 100, TimeUnit.SECONDS);
cache.get(key); // returns "value1"
cache.put(key, "value2", -1, TimeUnit.SECONDS, 100, TimeUnit.SECONDS);
cache.get(key); // returns null, expected "value2"
cache.put(key, "value3", -1, TimeUnit.SECONDS, 100, TimeUnit.SECONDS);
cache.get(key); // returns "value3"
~~~
In library mode, the 2nd get returns non-null as expected. The same behaviour is observed for a transient (maxIdle > -1) entry also.