Details
-
Improvement
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
None
-
None
Description
Solr's query parser currently creates a query for each clause it sees independently. This is no longer desirable, since if we are creating a filter (non-scoring query), we can use a TermsQuery.
PointFields SOLR-8396 also need to see a set of values together to efficiently create a set query.
This issue:
- adds context for the parser to know when it's parsing a query for matching only (that's only for the TermsQuery... I assume Points would always use a set query when passed multiple values)
- defers creation of real Query objects for simple term queries in a boolean query
- aggregates those values by field at the end to be passed to a new FieldType.getSetQuery method
- FieldType.getSetQuery base implementation uses TermsQuery for indexed fields