Interface ClusterStateTaskConfig

All Known Implementing Classes:
AckedClusterStateUpdateTask, ClusterStateTaskConfig.Basic, ClusterStateUpdateTask, MigrationResultsUpdateTask, SystemIndexMetadataUpgradeService.SystemIndexMetadataUpdateTask

public interface ClusterStateTaskConfig
Cluster state update task configuration for timeout and priority
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Interface
    Description
    static final record 
     
  • Method Summary

    Modifier and Type
    Method
    Description
    build(Priority priority)
    Build a cluster state update task configuration with the specified Priority and no timeout.
    build(Priority priority, org.elasticsearch.core.TimeValue timeout)
    Build a cluster state update task configuration with the specified Priority and timeout.
    The Priority for this cluster state update task configuration.
    org.elasticsearch.core.TimeValue
    The timeout for this cluster state update task configuration.
  • Method Details

    • timeout

      @Nullable org.elasticsearch.core.TimeValue timeout()
      The timeout for this cluster state update task configuration. If the cluster state update task isn't processed within this timeout, the associated ClusterStateTaskListener.onFailure(Exception) is invoked. Tasks arising from client requests should have a timeout which clients can adjust via the ?master_timeout query parameter, and typically defaults to 30s. In contrast, internal tasks can reasonably have an infinite timeout, especially if a timeout would simply trigger a retry.
      Returns:
      the timeout, or null if one is not set
    • priority

      Priority priority()
      The Priority for this cluster state update task configuration. Avoid priorites other than Priority.NORMAL where possible. A stream of higher-priority tasks can starve lower-priority ones from running. Higher-priority tasks should definitely share a ClusterStateTaskExecutor instance so that they are executed in batches.
      Returns:
      the priority
    • build

      static ClusterStateTaskConfig build(Priority priority)
      Build a cluster state update task configuration with the specified Priority and no timeout.
      Parameters:
      priority - the priority for the associated cluster state update task
      Returns:
      the resulting cluster state update task configuration
    • build

      static ClusterStateTaskConfig build(Priority priority, org.elasticsearch.core.TimeValue timeout)
      Build a cluster state update task configuration with the specified Priority and timeout.
      Parameters:
      priority - the priority for the associated cluster state update task
      timeout - the timeout for the associated cluster state update task
      Returns:
      the result cluster state update task configuration