itschrispeck opened a new pull request, #12274:
URL: https://github.com/apache/pinot/pull/12274

   https://github.com/apache/pinot/pull/11558 changed the mutable Lucene index 
to be queried using a separate `ThreadPoolExecutor` to avoid interrupts 
corrupting the index. `ThreadPoolExecutor` was used improperly which resulted 
in queries against realtime segments to be executed sequentially. The thread 
count of the executor generally would never grow beyond 1, as the queue would 
not reject new tasks. 
   
   This PR adds a new `ScalingThreadPoolExecutor` which has behavior that is 
the intended behavior from the previous PR. This is added in `pinot-common`, 
since it can later be used for other features such as the async deep store 
upload retry. 
   
   With `ScalingThreadPoolExecutor` we increase the pool size if all threads 
are busy by rejecting the additional task. The rejection handler will queue the 
task anyway after the queue initially rejects it, so it will be executed by the 
new thread. 
   
   
   tags: `bugfix`
   


-- 
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: commits-unsubscr...@pinot.apache.org

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


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

Reply via email to