Skip to content

Follow up #16061. Tighten score supplier cost estimation and introduce SortedSkipperScorerSupplier#16070

Merged
iverase merged 7 commits into
apache:mainfrom
iverase:SortedSkipperScorerSupplier
May 15, 2026
Merged

Follow up #16061. Tighten score supplier cost estimation and introduce SortedSkipperScorerSupplier#16070
iverase merged 7 commits into
apache:mainfrom
iverase:SortedSkipperScorerSupplier

Conversation

@iverase
Copy link
Copy Markdown
Contributor

@iverase iverase commented May 15, 2026

In #16061, score estimation depends on a hardcoded value that represents the skipper block size. That feels wrong and we should be able to get the size of the block we might need to inspect for the skipper itself. This PR proposes that, in the case we detect we might need to inspect a skipper, we take the size of the skipper for cost estimation.

In theory, it means that we might need to read one extra skipper block but it should be ok as the skipper should be already in the page cache so it should be fast.

In addition, I am extracting the logic in the SortedSkipperScorerSupplier so it can be easily reused.

@iverase iverase added this to the 10.5.0 milestone May 15, 2026
@iverase iverase requested a review from romseygeek May 15, 2026 08:42
Copy link
Copy Markdown
Contributor

@romseygeek romseygeek left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice! I left a couple of comments.

Comment thread lucene/core/src/java/org/apache/lucene/document/SortedSetDocValuesRangeQuery.java Outdated
Comment thread lucene/core/src/java/org/apache/lucene/search/SortedSkipperScorerSupplier.java Outdated
Copy link
Copy Markdown
Contributor

@romseygeek romseygeek left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM!

Comment thread lucene/CHANGES.txt Outdated
Co-authored-by: Alan Woodward <romseygeek@gmail.com>
@iverase iverase merged commit a16bca0 into apache:main May 15, 2026
13 checks passed
@iverase iverase deleted the SortedSkipperScorerSupplier branch May 15, 2026 11:03
iverase added a commit that referenced this pull request May 15, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants