[ 
https://issues.apache.org/jira/browse/LUCENE-2686?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Michael McCandless updated LUCENE-2686:
---------------------------------------

    Attachment: LUCENE-2686.patch

So... the good news is I made a new scorer (basically copied 
DisjunctionMaxScorer and then tweaked from there) that scores the OR-only case. 
 All tests pass w/ this new scorer.

And more good news is that if you don't score (I sort by doctitle to do that), 
you get a speedup -- 7.7% in my simplistic test (prefix query unit*, expands to 
988 terms, but I force it to do a scoring BQ rewrite, plus force it to use BS2 
not BS -- the nocommits in the patch).

But the bad news is with scoring on it's 22.7% slower!

And, the weird news is, I discovered accidentally that BS2 is much (> 2X) 
faster for this one query.  I think we need to modify the criteria that decides 
whether to use BS or BS2...  maybe when there are lots of lowish-docFreq terms, 
BS2 is better?

> DisjunctionSumScorer should not call .score on sub scorers until consumer 
> calls .score
> --------------------------------------------------------------------------------------
>
>                 Key: LUCENE-2686
>                 URL: https://issues.apache.org/jira/browse/LUCENE-2686
>             Project: Lucene - Java
>          Issue Type: Bug
>          Components: Search
>            Reporter: Michael McCandless
>            Assignee: Michael McCandless
>             Fix For: 3.1, 4.0
>
>         Attachments: LUCENE-2686.patch, Test2LUCENE2590.java
>
>
> Spinoff from java-user thread "question about Scorer.freq()" from Koji...
> BooleanScorer2 uses DisjunctionSumScorer to score only-SHOULD-clause boolean 
> queries.
> But, this scorer does too much work for collectors that never call .score, 
> because it scores while it's matching.  It should only call .score on the 
> subs when the caller calls its .score.
> This also has the side effect of messing up advanced collectors that gather 
> the freq() of the subs (using LUCENE-2590).

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org

Reply via email to