Interface ExternalShardAllocationClient


public interface ExternalShardAllocationClient
API May Change

Not for user extension

  • Method Summary

    Modifier and Type
    Method
    Description
    scala.concurrent.Future<ShardLocations>
    Get all the current shard locations that have been set via updateShardLocation
    scala.concurrent.Future<Done>
    Update the given shard's location.
    scala.concurrent.Future<Done>
    updateShardLocations(scala.collection.immutable.Map<String,Address> locations)
    Update all of the provided ShardLocations.
  • Method Details

    • shardLocations

      scala.concurrent.Future<ShardLocations> shardLocations()
      Get all the current shard locations that have been set via updateShardLocation
    • updateShardLocation

      scala.concurrent.Future<Done> updateShardLocation(String shard, Address location)
      Update the given shard's location. The pekko.actor.Address should match one of the nodes in the cluster. If the node has not joined the cluster yet it will be moved to that node after the first cluster sharding rebalance it does.

      Parameters:
      shard - The shard identifier
      location - Location (Pekko node) to allocate the shard to
      Returns:
      Confirmation that the update has been propagated to a majority of cluster nodes
    • updateShardLocations

      scala.concurrent.Future<Done> updateShardLocations(scala.collection.immutable.Map<String,Address> locations)
      Update all of the provided ShardLocations. The pekko.actor.Address should match one of the nodes in the cluster. If the node has not joined the cluster yet it will be moved to that node after the first cluster sharding rebalance it does.

      Parameters:
      locations - to update
      Returns:
      Confirmation that the update has been propagates to a majority of cluster nodes