Skip to content

Conversation

@drempapis
Copy link
Contributor

This is a draft pr to make visible the first approach of tracking the execution time per index by extending the ThreadPool Executor

We extended TaskExecutionTimeTrackingEsThreadPoolExecutor that already has logic to track globally (not per-index) EWMA and time spent executing tasks in the search thread pool to track on a per-index basis in TaskExecutionTimeTrackingPerIndexEsThreadPoolExecutor. We decided to extend this logic so that the time-tracking logic is not duplicated.
We take care of new indices being tracked with the computeIfAbsent inside the trackExecutionTime method and take care of removing deleted indices with the cluster state listener SearchIndexTimeTrackingCleanupService

@drempapis drempapis closed this Mar 21, 2025
@drempapis drempapis self-assigned this Mar 21, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants