ElasticSearch and Split Brain?


(Otis Gospodnetić) #1

Hello,

How exactly does ElasticSearch handle Split Brain scenarios?
I've asked this question on the Solr ML the other day and this is the
finding: http://search-lucene.com/m/3L3ht1xuETB1

The summary is, I think, as follows:

  1. the cluster partition with insufficient number of ZooKeepers (less than
    what the quorum is), the partition will not accept adds/updates/deletes
  2. the cluster partition with enough ZooKeepers to form the quorum will
    continue to take updates IFF it has at least one copy of each shard from
    the original cluster

I think searches will be served by 2), but not 1) and there is now an issue
open in Solr's JIRA to have 1) return search results, too, but with a flag
indicating that results may not be complete or could be stale.

How exactly does ES handle cluster partitioning?

I've asked a concrete Q about how Rivers are handled in Split Brain
situation and it looks like they are/were not handled well, meaning that
each partition of the cluster would end up with its copy of the River,
which I assume means there could be duplicate in the index once things are
fixed and cluster partitions are united in a single cluster:
https://groups.google.com/d/msg/elasticsearch/5ndIc0qokDw/QdoJvHkO004J

Thanks,
Otis

Search Analytics - http://sematext.com/search-analytics/index.html
Scalable Performance Monitoring - http://sematext.com/spm/index.html


(Shay Banon) #2

In terms of configuring a quorum, you can set the
discovery.minimum_master_nodes setting.

On Tue, Jun 19, 2012 at 11:12 PM, Otis Gospodnetic <
otis.gospodnetic@gmail.com> wrote:

Hello,

How exactly does ElasticSearch handle Split Brain scenarios?
I've asked this question on the Solr ML the other day and this is the
finding: http://search-lucene.com/m/3L3ht1xuETB1

The summary is, I think, as follows:

  1. the cluster partition with insufficient number of ZooKeepers (less than
    what the quorum is), the partition will not accept adds/updates/deletes
  2. the cluster partition with enough ZooKeepers to form the quorum will
    continue to take updates IFF it has at least one copy of each shard from
    the original cluster

I think searches will be served by 2), but not 1) and there is now an
issue open in Solr's JIRA to have 1) return search results, too, but with a
flag indicating that results may not be complete or could be stale.

How exactly does ES handle cluster partitioning?

I've asked a concrete Q about how Rivers are handled in Split Brain
situation and it looks like they are/were not handled well, meaning that
each partition of the cluster would end up with its copy of the River,
which I assume means there could be duplicate in the index once things are
fixed and cluster partitions are united in a single cluster:
https://groups.google.com/d/msg/elasticsearch/5ndIc0qokDw/QdoJvHkO004J

Thanks,
Otis

Search Analytics - http://sematext.com/search-analytics/index.html
Scalable Performance Monitoring - http://sematext.com/spm/index.html


(system) #3