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

Robert Muir updated LUCENE-4236:
--------------------------------

    Attachment: LUCENE-4236.patch

The previous patch had a bug: coord was computed for the conjunction as 
scorers.length/scorers.length but it should be scorers.length/maxCoord (in the 
case of optional clauses that happened to not exist in the segment). 

Random testing is great.

This patch removes the specialized TermConjunctionScorer, making the 
TermConjunctionScorer algorithm ConjunctionScorer. I added a method to Scorer 
so that any scorer can return an estimated cost of how many postings it will 
read:
* term: docFreq()
* disjunction: sum(cost)
* conjunction/phrase: min(cost) * numSubs

and so on, which ConjunctionScorer uses.

No perf degradation... refactoring continues
                
> clean up booleanquery conjunction optimizations a bit
> -----------------------------------------------------
>
>                 Key: LUCENE-4236
>                 URL: https://issues.apache.org/jira/browse/LUCENE-4236
>             Project: Lucene - Java
>          Issue Type: Improvement
>            Reporter: Robert Muir
>             Fix For: 4.0, 5.0
>
>         Attachments: LUCENE-4236.patch, LUCENE-4236.patch, LUCENE-4236.patch
>
>
> After LUCENE-3505, I want to do a slight cleanup:
> * compute the term conjunctions optimization in scorer(), so its applied even 
> if we have optional and prohibited clauses that dont exist in the segment 
> (e.g. return null)
> * use the term conjunctions optimization when optional.size() == 
> minShouldMatch, as that means they are all mandatory, too.
> * don't return booleanscorer1 when optional.size() == minShouldMatch, because 
> it means we have required clauses and in general BS2 should do a much better 
> job (e.g. use advance).

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

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

Reply via email to