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

Adrien Grand updated LUCENE-6926:
---------------------------------
    Attachment: LUCENE-6926.patch

OK, I gave this idea a try: it weights the cost of matching the prohibited 
clause by the maximum ratio of the required clause that the prohibited clause 
might also match. For instance if the required clause has a cost of 1000 and 
the prohibited clause has a cost of 10, then we know we will be advancing the 
prohibited iterator and confirming the two-phase iterator at most 1% of the 
time so the final cost can be ($\{match cost of the required clause\} + 0.01 * 
($\{cost of advancing the prohibited iterator\} + $\{match cost of the 
prohibited clause\})). Is it what you had in mind?

> Take matchCost into account for MUST_NOT clauses
> ------------------------------------------------
>
>                 Key: LUCENE-6926
>                 URL: https://issues.apache.org/jira/browse/LUCENE-6926
>             Project: Lucene - Core
>          Issue Type: Improvement
>            Reporter: Adrien Grand
>            Assignee: Adrien Grand
>            Priority: Minor
>         Attachments: LUCENE-6926.patch, LUCENE-6926.patch
>
>
> ReqExclScorer potentially has two TwoPhaseIterators to check: the one for the 
> positive clause and the one for the negative clause. It should leverage the 
> match cost API to check the least costly one first.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

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

Reply via email to