Adrien Grand created LUCENE-6290:
------------------------------------

             Summary: Make the query -> filter migration less performance trappy
                 Key: LUCENE-6290
                 URL: https://issues.apache.org/jira/browse/LUCENE-6290
             Project: Lucene - Core
          Issue Type: Task
            Reporter: Adrien Grand
            Assignee: Adrien Grand
             Fix For: Trunk, 5.1


The filter->query migration might be a bit trappy in terms of performance for 
our users.

For instance a FilteredQuery over a TermQuery and a DocValuesRangeFilter should 
be migrated to a BooleanQuery with a MUST clause for the TermQuery and a FILTER 
clause for the DocValuesRangeQuery. Performance will be similar since in both 
case we would use the query to drive the iteration and the filter would only be 
used to check documents that match the query (we would NOT try to advance the 
filter iterator).

However, if you only go half-way through the migration and end up with a 
FilteredQuery over a TermQuery and a QueryWrapperFilter(DocValuesRangeQuery) 
then performance will be terrible because this QueryWrapperFilter does not 
support random-access (which is the way such filters were not too slow before) 
and hides the approximation support from the DocValuesRangeQuery.



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