Class TaskBatcher
java.lang.Object
org.elasticsearch.cluster.service.TaskBatcher
Batching support for
PrioritizedEsThreadPoolExecutor
Tasks that share the same batching key are batched (see TaskBatcher.BatchedTask.batchingKey
)-
Nested Class Summary
Modifier and TypeClassDescriptionprotected class
Represents a runnable task that supports batching. -
Constructor Summary
ConstructorDescriptionTaskBatcher(org.apache.logging.log4j.Logger logger, PrioritizedEsThreadPoolExecutor threadExecutor)
-
Method Summary
Modifier and TypeMethodDescriptionprotected abstract void
onTimeout(List<? extends TaskBatcher.BatchedTask> tasks, org.elasticsearch.core.TimeValue timeout)
Action to be implemented by the specific batching implementation.protected abstract void
run(Object batchingKey, List<? extends TaskBatcher.BatchedTask> tasks, String tasksSummary)
Action to be implemented by the specific batching implementation All tasks have the given batching key.void
submitTasks(List<? extends TaskBatcher.BatchedTask> tasks, org.elasticsearch.core.TimeValue timeout)
-
Constructor Details
-
TaskBatcher
public TaskBatcher(org.apache.logging.log4j.Logger logger, PrioritizedEsThreadPoolExecutor threadExecutor)
-
-
Method Details
-
submitTasks
public void submitTasks(List<? extends TaskBatcher.BatchedTask> tasks, @Nullable org.elasticsearch.core.TimeValue timeout) throws EsRejectedExecutionException- Throws:
EsRejectedExecutionException
-
onTimeout
protected abstract void onTimeout(List<? extends TaskBatcher.BatchedTask> tasks, org.elasticsearch.core.TimeValue timeout)Action to be implemented by the specific batching implementation. All tasks have the same batching key. -
run
protected abstract void run(Object batchingKey, List<? extends TaskBatcher.BatchedTask> tasks, String tasksSummary)Action to be implemented by the specific batching implementation All tasks have the given batching key.
-