Adrien Grand created LUCENE-6889:
------------------------------------

             Summary: BooleanQuery.rewrite could easily optimize some simple 
cases
                 Key: LUCENE-6889
                 URL: https://issues.apache.org/jira/browse/LUCENE-6889
             Project: Lucene - Core
          Issue Type: Improvement
            Reporter: Adrien Grand
            Priority: Minor


Follow-up of SOLR-8251: APIs and user interfaces sometimes encourage to write 
BooleanQuery instances that are not optimal, for instance a typical case that 
happens often with Solr/Elasticsearch is to send a request that has a 
MatchAllDocsQuery as a query and some filter, which could be executed more 
efficiently by directly wrapping the filter into a ConstantScoreQuery.

Here are some ideas of rewrite operations that BooleanQuery could perform:
 - remove FILTER clauses when they are also a MUST clause
 - rewrite queries of the form "+*:* #filter" to a ConstantScoreQuery(filter)
 - rewrite to a MatchNoDocsQuery when a clause that is a MUST or FILTER clause 
is also a MUST_NOT clause



--
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