Skip to content

[python] Read composite BTree indexes in data evolution scans - #10802

Merged
JingsongLi merged 10 commits into
apache:masterfrom
XiaoHongbo-Hope:codex/python-composite-btree-read
Oct 27, 2026
Merged

JingsongLi merged 10 commits into
apache:masterfrom
XiaoHongbo-Hope:codex/python-composite-btree-read

Conversation

@XiaoHongbo-Hope

@XiaoHongbo-Hope XiaoHongbo-Hope commented Oct 25, 2026 •

Copy link
Copy Markdown
Contributor

PyPaimon's Python data-evolution scan previously skipped composite BTree indexes. It can now read Java-generated composite keys and use left-prefix equality, IN, NULL, and range predicates. AND queries also combine remaining scalar indexes; explicit index files can include composite indexes. Residual filtering and full/fast coverage behavior are preserved. The index format and Python index-writing APIs are unchanged.

Validation: 59 related tests and 181 subtests passed, including Java-generated BTree fixtures and table scans. Flake8 on changed files and git diff --check passed.

@XiaoHongbo-Hope
XiaoHongbo-Hope marked this pull request as ready for review October 26, 2026 12:54

@Akash3121 Akash3121 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

LGTM

@JingsongLi

Copy link
Copy Markdown
Contributor

+1

@JingsongLi
JingsongLi merged commit 14482bd into apache:master Oct 27, 2026
21 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants