ISPN-263 Handle cluster partitions

https://issues.jboss.org/browse/ISPN-263

I added one more commit with some test fixes.
Actually the rule should be: if a sub cluster is smaller than numowners
then that subcluster is completely unavailable. If a subcluster is >=
numowners then it is degraded. So it is not the nodes that have disappeared
but the nodes that remain that matter
On 8 Aug 2014 21:47, "wburns" <notifications@github.com> wrote:

> In
> documentation/src/main/asciidoc/user_guide/chapter-32-Clustering_modes.adoc:
>
> > +bank account information). On the other hand, if Infinispan is used as an best-effort
> > +cache, e.g. to cache web pages in a proxy, the partitions are perfectly tolerable.
> > +
> > +The following sections describes the way Infinispan handles split brains and
> > +successive failures when partition handling is enabled, followed by a section on
> > +configuring the partition handling functionality.
> > +
> > +==== Split brain
> > +
> > +We assume a partition happens when *numOwners* or more nodes disappear at the
> > +same time. When this happen two (or more) partitions form which are not aware of
> > +each other. Each such partition does not start a rebalance, but enters in degraded mode:
> > +
> > +- request (read and writes) for entries that have all the copies on nodes within
> > +this partition are honoured
> > +- requests for entries that are partially or totally owned by nodes that disappeared
>
> That is fine, unfortunately this got detracted from my original intention
> and I wasn't clear enough. I was saying in the case when this node knows
> that others have to be in degraded mode as well. Lets say you had
> numOwner=3 and 4 nodes. If you had a 2/2 split you know each one has to be
> in a degraded mode.
>
> However thinking about this more I thought of a more important one that
> this policy doesn't cover. Lets say you have numOwners=3 and a cluster of 4
> nodes {A, B, C, D}. If you have an even split {A,B} & {C,D} then both
> clusters would continue operating like nothing happened since numOwners
> wasn't hit. This obviously shouldn't be allowed though.
>
> —
> Reply to this email directly or view it on GitHub
> <https://github.com/infinispan/infinispan/pull/2785/files#r16012678>.
>