Class WriteLoadConstraintSettings

java.lang.Object
org.elasticsearch.cluster.routing.allocation.WriteLoadConstraintSettings

public class WriteLoadConstraintSettings extends Object
Settings definitions for the write load allocation decider and associated infrastructure
  • Field Details

    • WRITE_LOAD_DECIDER_ENABLED_SETTING

      public static final Setting<WriteLoadConstraintSettings.WriteLoadDeciderStatus> WRITE_LOAD_DECIDER_ENABLED_SETTING
    • WRITE_LOAD_DECIDER_HIGH_UTILIZATION_THRESHOLD_SETTING

      public static final Setting<RatioValue> WRITE_LOAD_DECIDER_HIGH_UTILIZATION_THRESHOLD_SETTING
      The threshold over which we consider write thread pool utilization "high"
    • WRITE_LOAD_DECIDER_HIGH_UTILIZATION_DURATION_SETTING

      public static final Setting<TimeValue> WRITE_LOAD_DECIDER_HIGH_UTILIZATION_DURATION_SETTING
      The duration for which we need to see "high" utilization before we consider the low threshold exceeded
    • WRITE_LOAD_DECIDER_QUEUE_LATENCY_THRESHOLD_SETTING

      public static final Setting<TimeValue> WRITE_LOAD_DECIDER_QUEUE_LATENCY_THRESHOLD_SETTING
      When the decider is WriteLoadConstraintSettings.WriteLoadDeciderStatus.ENABLED, the write-load monitor will call RerouteService.reroute(String, Priority, ActionListener) when we see tasks being delayed by this amount of time (but no more often than WRITE_LOAD_DECIDER_REROUTE_INTERVAL_SETTING)
    • WRITE_LOAD_DECIDER_REROUTE_INTERVAL_SETTING

      public static final Setting<TimeValue> WRITE_LOAD_DECIDER_REROUTE_INTERVAL_SETTING
      The minimum amount of time between successive calls to reroute to address write load hot-spots
    • WRITE_LOAD_DECIDER_MINIMUM_LOGGING_INTERVAL

      public static final Setting<TimeValue> WRITE_LOAD_DECIDER_MINIMUM_LOGGING_INTERVAL
      The minimum amount of time between logging messages about write load decider interventions
  • Constructor Details

    • WriteLoadConstraintSettings

      public WriteLoadConstraintSettings(ClusterSettings clusterSettings)
  • Method Details

    • getWriteLoadConstraintEnabled

      public WriteLoadConstraintSettings.WriteLoadDeciderStatus getWriteLoadConstraintEnabled()
    • getMinimumRerouteInterval

      public TimeValue getMinimumRerouteInterval()
    • getQueueLatencyThreshold

      public TimeValue getQueueLatencyThreshold()
    • getHighUtilizationThreshold

      public double getHighUtilizationThreshold()
      Returns:
      The threshold as a ratio - i.e. in [0, 1]