Class SplitBrainResolverProvider

java.lang.Object
org.apache.pekko.cluster.DowningProvider
org.apache.pekko.cluster.sbr.SplitBrainResolverProvider

public final class SplitBrainResolverProvider extends DowningProvider
See reference documentation: https://pekko.apache.org/docs/pekko/current/split-brain-resolver.html

Enabled with configuration:


 pekko.cluster.downing-provider-class = "org.apache.pekko.cluster.sbr.SplitBrainResolverProvider"
 
  • Constructor Details

    • SplitBrainResolverProvider

      public SplitBrainResolverProvider(ActorSystem system)
  • Method Details

    • downRemovalMargin

      public scala.concurrent.duration.FiniteDuration downRemovalMargin()
      Description copied from class: DowningProvider
      Time margin after which shards or singletons that belonged to a downed/removed partition are created in surviving partition. The purpose of this margin is that in case of a network partition the persistent actors in the non-surviving partitions must be stopped before corresponding persistent actors are started somewhere else. This is useful if you implement downing strategies that handle network partitions, e.g. by keeping the larger side of the partition and shutting down the smaller side.
      Specified by:
      downRemovalMargin in class DowningProvider
    • downingActorProps

      public scala.Option<Props> downingActorProps()
      Description copied from class: DowningProvider
      If a props is returned it is created as a child of the core cluster daemon on cluster startup. It should then handle downing using the regular pekko.cluster.Cluster APIs. The actor will run on the same dispatcher as the cluster actor if dispatcher not configured.

      May throw an exception which will then immediately lead to Cluster stopping, as the downing provider is vital to a working cluster.

      Specified by:
      downingActorProps in class DowningProvider