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

   When we changed `rewrite` to take an `IndexSearcher` rather than an 
`IndexReader` in order to allow concurrent rewrites, my intuition was that it 
would eventually get used on a minority of queries that do expensive stuff in 
`rewrite` such as `KnnFloatVectorQuery` which needs to run a vector search. On 
the other hand, queries discussed here have super cheap rewrites, e.g. 
`FieldExistsQuery` runs in O(num_segments) and doesn't perform any I/O so I 
don't think that its rewrite should be made concurrent?
   
   > As some query rewrites calls rewrites on the child/sub queries. Can we 
achieve this in those queries as well?
   
   Indeed compound queries should not rewrite their sub queries via the 
executor, otherwise we could have threads in the executor joining other threads 
from the executor, which can lead to deadlocks.


-- 
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: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to