Repository navigation
Complete native global-index lifecycle and search planning - #1136
Merged
JingsongLi merged 2 commits intoOct 16, 2026
Merged
JingsongLi merged 2 commits into
JingsongLi merged 2 commits into
Conversation
leaves12138
approved these changes
Oct 16, 2026
leaves12138
left a comment
There was a problem hiding this comment.
Reviewed against Java Paimon semantics, including global-index identity/range coverage, deletion-vector handling, snapshot pinning, vector/full-text scan metadata, and Vindex reader option/score behavior.
No blocking issues found. The targeted Rust tests passed:
- 19 global-index drop-builder tests
- 50 de-vector-read tests
- 23 Vindex reader tests
All PR checks are green. Approving.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Purpose
Complete the Rust core and binding support needed by PyPaimon’s existing index lifecycle and explicit search APIs. Java/Paimon semantics remain the reference; no new Python index families are introduced.
Changes
build()returns unpublished metadata deletions;execute()retains snapshot conflict validation and dry-run behavior. Commit failures never remove index files.The binding references the existing locked paimon-vindex-core and roaring packages; no third-party version changes are introduced.
Validation
cargo test -p paimon --locked --features fulltext --lib index_: 583 passed, four existing ignored.cargo test -p paimon --locked --features fulltext --lib search_: 174 passed.--lib vector_: 357 passed;--lib vindex::reader::tests: 23 passed.cargo +1.98.0 clippy --locked --all-targets --workspace --features fulltext,vortex -- -D warnings: passed.cargo fmt --all --checkand diff checks: passed.Companion PyPaimon PR: apache/paimon#10598. Python CI continues building apache/paimon-rust main.