This BZ should cover specification & inclusion into documentation of consistency guarantees for cache operations, given certain configurations.
We can't simply use the consistency model defined by Java Specification and broaden it for whole cache (maybe the expression "can't" is too strong, but we definitely don't want to do that in some cases).
By consistency guarantees/model I mean mostly in which order are writes allowed to be observed: and we can't boil it down to simply causal, PRAM or any other consistency model as writes can be observed as non-atomic in Infinispan/JDG.
Infinispan documentation is quite scarce about that, the only trace I've found is in Glossary: "Infinispan has traditionally followed ACID principles as far as possible, however an eventually consistent mode embracing BASE is on the roadmap.", and I don't think there is anything better in product docs.
Adding JIRA that contains one situation in which the 'correct' behaviour of cache is questionable.
Community documentation JIRA
Checking with Dan about what the consistency guarantee we want to provide is.
Dan Berindei <email@example.com> updated the status of jira ISPN-4995 to Resolved
Hi Misha, is there some time left so you could add one more warning box to the Network Partition Handling document, related to ISPN-4995? (linked to this BZ, resolved as Won't Fix - therefore it should be a documented behavior)
Between the time (t1) when partitions begin merging to the time (t2) when the merge is complete, nodes reconnect through a series of merge events. During this time window, it is possible that a node can be reported as having temporarily left the cluster. This node may not detect that it has been removed from the cluster (and enter Degraded Mode) but writes in the cluster are not executed on this node. Therefore, it can return stale values for some of the entries.
This is in fact the same issue as documented in 1.2, first warning box, third point: 'There is also a possibility of a stale read in a minor partition during this transition period, as an entry is still Available until the minor partition enters Degraded state.', but it may not be obvious that there can be logical split while physical merge occurs.
I'm closing this issue out due to age. If it persists, file a corresponding JIRA.