javanna commented on issue #12347:
URL: https://github.com/apache/lucene/issues/12347#issuecomment-1590702834

   heya @sohami thanks a lot for sharing more context. 
   
   > With custom slice computation to control the max slices per request/index 
the limiting factor in SliceExecutor will not be needed.
   
   Good point, agreed. Also, QueueSizeBasedExecutor is quite opinionated and 
non configurable, and it gets applied based on an instanceof check on the 
provided executor which is not fantastic. 
   
   Another thought on my end: executing sometimes on the caller thread, and 
sometimes on the executor makes things hard to reason about: how do you size 
the two thread pools if you can't easily tell what load they are subjected to? 
   
   Instead of making the slice executor configurable then, I would considering 
removing it entirely, and forcing the collection to always to happen on the 
separate thread pool. I think we'll need to figure out how to handle rejections 
from the executor thread pool, as today the collection happens on the caller 
thread whenever there's a rejection which I don't think is a behaviour we want 
to keep. We could also leave this to the executor implementation that is 
provided.
   
   I believe that the QueueSizeBasedExecutor was contributed by OpenSearch: 
would the approach suggested above be feasible for you folks? I am thinking it 
would simplify things and provide a better user experience for Lucene users.


-- 
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