liveBook · Manning

Split brain resolver

As explained in Akka in Action, Second Edition

SplitBrainResolverProvider is an Akka cluster provider that configures split-brain resolution behavior for downing decisions.

SplitBrainResolverProvider configures how an Akka cluster responds when nodes become unreachable. It helps the cluster choose which nodes to shut down so the remaining members can maintain a consistent state, especially when sharding distributes actors across the cluster. section 13.3 section 13.5

Enable the provider

Set the downing provider in configuration: akka.cluster.downing-provider-class = "akka.cluster.sbr.SplitBrainResolverProvider". The resolver then makes downing decisions according to its configured strategy rather than requiring manual Down messages. section 8.2.6

Akka detects reachability through gossip between cluster nodes and a phi-accrual failure detector. Because unreachability is relative to the observing node, the resolver applies explicit rules instead of treating every temporary communication failure as a simple Boolean failure. section 8.2.4 section 8.2.6

Available SBR strategies include:

  • Keep-majority retains the partition containing most cluster members. section 13.5
  • Lease-majority and static-quorum provide alternative quorum-based policies. section 13.5
  • Keep-oldest preserves the partition containing the oldest member. section 13.5

Manual downing versus automatic resolution

A manual intervention can send Down(address) through the cluster manager, marking an unreachable node Down and removing it. SBR is preferred for automatic decisions, using configured rules to handle unreachable nodes and network partitions. section 8.2.6

How Akka in Action, Second Edition covers it

How deep it goes
Explains gossip, convergence, failure suspicion, configuration, and resolution strategies, but defers detailed strategy behavior.
Examples
Uses provider configuration, manual Down commands, node-removal output, and keep-majority, lease-majority, static-quorum, and keep-oldest policies.
What it assumes
Assumes basic Akka cluster membership and node reachability while explaining gossip, convergence, and failure suspicion.
What you can do after
Operate/configure Akka clusters with an SBR provider and select a partition-resolution policy for failure scenarios.
How it connects
Connects split-brain resolution with gossip protocols, failure detectors, cluster sharding, and network partitioning.

Related concepts

This explainer was generated by Manning's knowledge graph from the text of Akka in Action, Second Edition. The section links point to the parts of the book it draws on.