CombinedFieldsQuery needs dynamic pruning support [LUCENE-10061]
- Dominant language
- Java
- Stars
- 3.6k
- Forks
- 1.4k
- Avg merge
- 2d 11h
- Merged PRs (30d)
- 88
Description
CombinedFieldQuery's Scorer doesn't implement advanceShallow/getMaxScore, forcing Lucene to collect all matches in order to figure the top-k hits.
---
Migrated from [LUCENE-10061](https://issues.apache.org/jira/browse/LUCENE-10061) by Adrien Grand (@jpountz), updated Feb 01 2022
Attachments: [CombinedFieldQueryTasks.wikimedium.10M.nostopwords.tasks](https://apache.github.io/lucene-jira-archive/attachments/LUCENE-10061/CombinedFieldQueryTasks.wikimedium.10M.nostopwords.tasks)
Linked issues:
- #11249
Pull requests: https://github.com/apache/lucene/pull/418
Contributor guide
Research direction
Start by locating CombinedFieldQuery and its Scorer implementation, then inspect the advanceShallow and getMaxScore behavior used by comparable Lucene queries. Done means CombinedFieldQuery supports dynamic pruning so Lucene no longer has to collect every match to determine top-k hits.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- search
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Clearly specified
- Newbie friendliness
- 25/100