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, 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, 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 TimeValue timeout) throws EsRejectedExecutionException - Throws:
EsRejectedExecutionException
-
onTimeout
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.
-