[ https://issues.apache.org/jira/browse/LUCENE-5460?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13907600#comment-13907600 ]
Robert Muir commented on LUCENE-5460: ------------------------------------- Thats it! i have not thought through an API for this yet, but i think we need some way to do a "quick check" (maybe a separate DISI) that e.g. a scorer can return, so conjunctionscorer/filteredquery can use for the "intersection" piece... and then somehow "confirm" with the more expensive stuff only after all subs have met the "quick check". And we want to do it in such a way that its not intrusive or slow anything down... > Allow driving a query by sparse filters > --------------------------------------- > > Key: LUCENE-5460 > URL: https://issues.apache.org/jira/browse/LUCENE-5460 > Project: Lucene - Core > Issue Type: Improvement > Components: core/search > Reporter: Shai Erera > > Today if a filter is very sparse we execute the query in sort of a leap-frog > manner between the query and filter. If the query is very expensive to > compute, and/or matching few docs only too, calling scorer.advance(doc) just > to discover the doc it landed on isn't accepted by the filter, is a waste of > time. Since Filter is always the "final ruler", I wonder if we had something > like {{boolean DISI.advanceExact(doc)}} we could use it instead, in some > cases. > There are many combinations in which I think we'd want to use/not-use this > API, and they depend on: Filter's complexity, Filter.cost(), Scorer.cost(), > query complexity (span-near, many clauses) etc. > I open an issue so we can discuss. DISI.advanceExact(doc) is just a > preliminary proposal, to get an API we could experiment with. The default > implementation should be fairly easy and straightforward, and we could > override where we can offer a more optimized imp. -- This message was sent by Atlassian JIRA (v6.1.5#6160) --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org For additional commands, e-mail: dev-h...@lucene.apache.org