You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@lucene.apache.org by "Adrien Grand (JIRA)" <ji...@apache.org> on 2017/01/05 16:10:59 UTC

[jira] [Created] (LUCENE-7621) Per-document minShouldMatch

Adrien Grand created LUCENE-7621:
------------------------------------

             Summary: Per-document minShouldMatch
                 Key: LUCENE-7621
                 URL: https://issues.apache.org/jira/browse/LUCENE-7621
             Project: Lucene - Core
          Issue Type: New Feature
            Reporter: Adrien Grand
            Priority: Minor


I have seen similar requirements a couple times but could not find any related issue so I am opening one now. The idea would be to allow passing a {{LongValuesSource}} rather than an integer as the {{minShouldMatch}} parameter of {{BooleanQuery}} so that the number of required clauses can depend on the document that is being matched. In terms of implementation, it looks like it would be straightforward as we would just have to update the value of {{minShouldMatch}} in {{MinShouldMatchSumScorer.setDocAndFreq}} and things would still be efficient, ie. we would still use advance on the costly clauses.

This kind of feature would allow to run queries that must match eg. 80% of the terms that a document contains (by indexing the number of terms in a separate field). It would also make it possible for Luwak or ES' percolator to index boolean queries that have a value of {{minShouldMatch}} greater than 1 more efficiently.

I do not have any plans to work on it soon but I am curious how much interest this feature would drive.



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

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