Details
-
Sub-task
-
Status: Patch Available
-
Major
-
Resolution: Unresolved
-
None
-
None
-
None
-
None
Description
Solr has a FunctionRangeQuery. It is constant scoring and also a post-filter. Lucene has a FunctionRangeQuery that I added years ago LUCENE-6919. It is not constant scoring as it scores based on the wrapped ValueSource, although this is easily made the same as Solr's by wrapping in a ConstantScoreQuery. And it uses Lucene's TwoPhaseIterator indirectly which is equivalent functionality to Solr's PostFilter. Consequently we can remove Solr's implementation. Additionally, ValueSourceRangeFilter is a piece of the puzzle that can be removed as Solr's FunctionQuery was a wrapper around this specifically. FYI Once upon a time, Query and Filter were separate, then Filter was made to subclass Query and then Filter was relegated to Solr as tech debt.
Attachments
Issue Links
- relates to
-
LUCENE-6919 Change the Scorer API to expose an iterator instead of extending DocIdSetIterator
-
- Closed
-
- requires
-
SOLR-14166 Use TwoPhaseIterator for non-cached filter queries
-
- Closed
-
- links to