apache / apache/lucene

CombinedFieldsQuery needs dynamic pruning support [LUCENE-10061]

Open
#11,099 8 comments 0 reactions 0 assignees View on GitHub
legacy-jira-priority:Minor type:enhancement
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

Open the contributing 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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.