[ 
https://issues.apache.org/jira/browse/LUCENE-5460?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13906949#comment-13906949
 ] 

Robert Muir commented on LUCENE-5460:
-------------------------------------

i dont see the need to add any new APIs here, certiainly not confusing ones to 
DISI.

The infrastructure for all this already exists (conjunctionscorer, cost(), 
etc). There is no need to add anything else. if you have such a slow query, 
ensure its cost calculation is relevant.

> 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: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to