abstract class ShardCoordinator extends Actor with Timers

Singleton coordinator that decides where to allocate shards.

Source
ShardCoordinator.scala
See also

ClusterSharding extension

Linear Supertypes
Type Hierarchy
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. ShardCoordinator
  2. Timers
  3. Actor
  4. AnyRef
  5. Any
Implicitly
  1. by any2stringadd
  2. by StringFormat
  3. by Ensuring
  4. by ArrowAssoc
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Instance Constructors

  1. new ShardCoordinator(settings: ClusterShardingSettings, allocationStrategy: ShardAllocationStrategy)

Type Members

  1. type Receive = PartialFunction[Any, Unit]
    Definition Classes
    Actor

Abstract Value Members

  1. abstract def receive: actor.Actor.Receive

    Scala API: This defines the initial actor behavior, it must return a partial function with the actor logic.

    Scala API: This defines the initial actor behavior, it must return a partial function with the actor logic.

    Definition Classes
    Actor
  2. abstract def update[E <: DomainEvent](evt: E)(f: (E) => Unit): Unit

Concrete Value Members

  1. def active: Receive
  2. var aliveRegions: Set[ActorRef]
  3. var allRegionsRegistered: Boolean
  4. def allocateShardHomesForRememberEntities(): Unit
  5. val cluster: Cluster
  6. implicit val context: ActorContext

    Scala API: Stores the context for this actor, including self, and sender.

    Scala API: Stores the context for this actor, including self, and sender. It is implicit to support operations such as forward.

    WARNING: Only valid within the Actor itself, so do not close over it and publish it to other threads!

    akka.actor.ActorContext is the Scala API. getContext returns a akka.actor.AbstractActor.ActorContext, which is the Java API of the actor context.

    Definition Classes
    Actor
  7. def continueGetShardHome(shard: ShardId, region: ActorRef, getShardHomeSender: ActorRef): Unit
  8. def continueRebalance(shards: Set[ShardId]): Unit
  9. var gracefulShutdownInProgress: Set[ActorRef]
  10. def handleGetShardHome(shard: ShardId): Boolean

    returns

    true if the message could be handled without state update, i.e. the shard location was known or the request was deferred or ignored

  11. def hasAllRegionsRegistered(): Boolean
  12. def isMember(region: ActorRef): Boolean
  13. val log: MarkerLoggingAdapter
  14. val minMembers: Int
  15. def postRestart(reason: Throwable): Unit

    User overridable callback: By default it calls preStart().

    User overridable callback: By default it calls preStart().

    reason

    the Throwable that caused the restart to happen Is called right AFTER restart on the newly created Actor to allow reinitialization after an Actor crash.

    Definition Classes
    Actor
    Annotations
    @throws(classOf[Exception])
  16. def postStop(): Unit

    User overridable callback.

    User overridable callback.

    Is called asynchronously after 'actor.stop()' is invoked. Empty default implementation.

    Definition Classes
    ShardCoordinatorActor
  17. def preRestart(reason: Throwable, message: Option[Any]): Unit

    Scala API: User overridable callback: By default it disposes of all children and then calls postStop().

    Scala API: User overridable callback: By default it disposes of all children and then calls postStop().

    reason

    the Throwable that caused the restart to happen

    message

    optionally the current message the actor processed when failing, if applicable Is called on a crashed Actor right BEFORE it is restarted to allow clean up of resources before Actor is terminated.

    Definition Classes
    Actor
    Annotations
    @throws(classOf[Exception])
  18. def preStart(): Unit

    User overridable callback.

    User overridable callback.

    Is called when an Actor is started. Actors are automatically started asynchronously when created. Empty default implementation.

    Definition Classes
    ShardCoordinatorActor
  19. var preparingForShutdown: Boolean
  20. var rebalanceInProgress: Map[ShardId, Set[ActorRef]]
  21. var rebalanceWorkers: Set[ActorRef]
  22. def receiveTerminated: Receive
  23. def regionProxyTerminated(ref: ActorRef): Unit
  24. def regionTerminated(ref: ActorRef): Unit
  25. var regionTerminationInProgress: Set[ActorRef]
  26. val removalMargin: FiniteDuration
  27. implicit final val self: ActorRef

    The 'self' field holds the ActorRef for this actor.

    The 'self' field holds the ActorRef for this actor.

    Can be used to send messages to itself:

    self ! message
    

    Definition Classes
    Actor
  28. def sendHostShardMsg(shard: ShardId, region: ActorRef): Unit
  29. final def sender(): ActorRef

    The reference sender Actor of the last received message.

    The reference sender Actor of the last received message. Is defined if the message was sent from another Actor, else deadLetters in akka.actor.ActorSystem.

    WARNING: Only valid within the Actor itself, so do not close over it and publish it to other threads!

    Definition Classes
    Actor
  30. def shutdownShards(shuttingDownRegion: ActorRef, shards: Set[ShardId]): Unit
  31. def shuttingDown: Receive
  32. var state: State
  33. def stateInitialized(): Unit
  34. def supervisorStrategy: SupervisorStrategy

    User overridable definition the strategy to use for supervising child actors.

    User overridable definition the strategy to use for supervising child actors.

    Definition Classes
    Actor
  35. final def timers: TimerScheduler

    Start and cancel timers via the enclosed TimerScheduler.

    Start and cancel timers via the enclosed TimerScheduler.

    Definition Classes
    Timers
  36. var unAckedHostShards: Map[ShardId, Cancellable]
  37. def unhandled(message: Any): Unit

    User overridable callback.

    User overridable callback.

    Is called when a message isn't handled by the current behavior of the actor by default it fails with either a akka.actor.DeathPactException (in case of an unhandled akka.actor.Terminated message) or publishes an akka.actor.UnhandledMessage to the actor's system's akka.event.EventStream

    Definition Classes
    Actor
  38. var waitingForLocalRegionToTerminate: Boolean
  39. var waitingForShardsToStop: Map[ShardId, Set[(ActorRef, UUID)]]
  40. def watchStateActors(): Unit