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

Adrien Grand commented on LUCENE-8204:
--------------------------------------

The benchmark numbers look great! Some comments on the patch:
 *  Could we somehow merge optIsRequiredBlock and optIsRequiredSegment to have 
fewer variables to take care of? For instance could we somehow set 
upTo=NO_MORE_DOCS so that optIsRequiredBlock=true's effect lasts til the end of 
the segment instead of optIsRequiredSegment?
 * advanceTarget does {{target = reqApproximation.advance(upTo + 1)}} and then 
{{moveToNextBlock(target)}}. Should we just do {{target = upTo+1}} to avoid 
reading postings? There might not be any matches in the next block and calling 
advance() forces the postings reader to decompress the block, while I would 
expect advanceTarget() to only advance the target based on impacts?
 * advanceShallow should check that optScorer.docID() is less than or equal to 
target before calling advanceShallow on it?

> ReqOptSumScorer should leverage sub scorers' per-block max scores
> -----------------------------------------------------------------
>
>                 Key: LUCENE-8204
>                 URL: https://issues.apache.org/jira/browse/LUCENE-8204
>             Project: Lucene - Core
>          Issue Type: Improvement
>            Reporter: Adrien Grand
>            Priority: Minor
>         Attachments: LUCENE-8204.patch
>
>
> Currently it only looks at max scores on the entire segment. Given that 
> per-block max scores usually give lower upper bounds of the score, this 
> should help.
> This is especially important for LUCENE-8197 to work well since the main 
> query would typically be added as a MUST clauses of a boolean query while the 
> query that scores on features would be a SHOULD clause.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to