lucene-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Michael McCandless (JIRA)" <>
Subject [jira] [Created] (LUCENE-4396) BooleanScorer should sometimes be used for MUST clauses
Date Sat, 15 Sep 2012 16:01:07 GMT
Michael McCandless created LUCENE-4396:

             Summary: BooleanScorer should sometimes be used for MUST clauses
                 Key: LUCENE-4396
             Project: Lucene - Core
          Issue Type: Improvement
            Reporter: Michael McCandless

Today we only use BooleanScorer if the query consists of SHOULD and MUST_NOT.

If there is one or more MUST clauses we always use BooleanScorer2.

But I suspect that unless the MUST clauses have very low hit count compared to the other clauses,
that BooleanScorer would perform better than BooleanScorer2.  BooleanScorer still has some
vestiges from when it used to handle MUST so it shouldn't be hard to bring back this capability
... I think the challenging part might be the heuristics on when to use which (likely we would
have to use firstDocID as proxy for total hit count).

Likely we should also have BooleanScorer sometimes use .advance() on the subs in this case,
eg if suddenly the MUST clause skips 1000000 docs then you want to .advance() all the SHOULD

I won't have near term time to work on this so feel free to take it if you are inspired!

This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see:

To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message