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]
