jpountz commented on code in PR #12345:
URL: https://github.com/apache/lucene/pull/12345#discussion_r1254334257


##########
lucene/core/src/java/org/apache/lucene/search/IndexSearcher.java:
##########
@@ -763,6 +763,11 @@ public Query rewrite(Query original) throws IOException {
     for (Query rewrittenQuery = query.rewrite(this);
         rewrittenQuery != query;
         rewrittenQuery = query.rewrite(this)) {
+      if (queryTimeout != null) {

Review Comment:
   Woops, sorry for missing your question. @mikemccand 's understanding is 
correct, something like `ExitableDirectoryReader`.  +1 to @mikemccand 's 
suggestion:
    - Implement a package-private `ExitableIndexReader`, which is really the 
same as `ExitableDirectoryReader` but for any `IndexReader`. It should wrap 
terms and points, but not postings and doc values (which are already covered 
via the bulk scorer).
    - Update `IndexSearcher#getIndexReader` to return the wrapped index reader. 
This will automatically make sure expensive rewrites are intercepted since 
`IndexSearcher#getIndexReader` is their only way to get access to the reader.



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