-
Bug
-
Resolution: Done
-
Critical
-
5.2.1.Final, 5.2.5.Final, 5.2.6.Final
-
None
When using a custom DeltaAware implementation in a cluster with 2 replicated nodes with eviction enabled, data transferred from one node (the writer) to the another (the reader) causes data stored on this node and evicted at the time of the change, to be rewritten with whatever the partial latest delta was.
In more detail:
- configure 2 nodes in replicated mode, with eviction enabled
- consider NodeA the writer and NodeB the reader
- NodeA inserts some data (custom entries) into the cache
- NodeB correctly receives via state transfer the initial data
- NodeA loads & partially updates some information about an entry which was not in the cache - was evicted previously
- NodeB receives the partial delta with the changes from NodeA, but instead of merging with whatever is stored in the persistent store, replaces the entire entry in the cache, leaving it in effect with "partial/corrupt information"
If eviction is not enabled, everything works as expected.