Class ThrottlingAllocationDecider


public class ThrottlingAllocationDecider
extends AllocationDecider
ThrottlingAllocationDecider controls the recovery process per node in the cluster. It exposes two settings via the cluster update API that allow changes in real-time:
  • cluster.routing.allocation.node_initial_primaries_recoveries - restricts the number of initial primary shard recovery operations on a single node. The default is 4
  • cluster.routing.allocation.node_concurrent_recoveries - restricts the number of total concurrent shards initializing on a single node. The default is 2

If one of the above thresholds is exceeded per node this allocation decider will return Decision.THROTTLE as a hit to upstream logic to throttle the allocation process to prevent overloading nodes due to too many concurrent recovery processes.