jpountz commented on PR #14900:
URL: https://github.com/apache/lucene/pull/14900#issuecomment-3042617156

   @vigyasharma what would you think of the following:
    - Instead of making it a singleton, add the executor as a constructor 
argument so that the same executor can be used for indexing and merging? (plus 
add javadocs to recommend using a fixed thread pool and sharing it with 
indexing)
    - Tasks get wrapped when submitted to the executor, similarly to what 
`TaskExecutor` does with `TaskExecutor.Task`, to allow merges to run in the 
current thread if they don't get picked up by the executor in a timely fashion.
    - To mimic CMS, maybe this Task wrapper should keep pulling pending merges 
that are below MIN_BIG_MERGE_MB=50MB without waiting for them to go through the 
executor queue so that they always run almost immediately? (this requires 
tracking pending merges in a separate queue)


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscr...@lucene.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscr...@lucene.apache.org
For additional commands, e-mail: issues-h...@lucene.apache.org

Reply via email to