JunRuiLee opened a new pull request, #646: URL: https://github.com/apache/paimon-rust/pull/646
### Purpose This is PR 2/3 of a stacked vector-search performance series. Depends on #645. The batch vector-search API currently executes each query as an independent scalar vindex search. This repeatedly traverses the same index structures and does not use the native batch-search APIs provided by `paimon-vindex-core`. This change groups compatible searches and executes them through the native batch API while preserving the input/result ordering contract. While the preceding PR is open, GitHub's main-based diff also contains PR 1. The isolated change in this PR is commit `f2403ec`. ### Brief change log - Prepare and validate each query before backend execution. - Group queries with compatible `top_k`, `nprobe`, and row-id filters. - Execute compatible groups through native vindex batch-search APIs. - Bound native batches to 16 queries. - Retain scalar execution for groups containing a single query. - Restore results to their original query order. - Validate backend result dimensions before slicing per-query results. ### Tests - `cargo test -p paimon vindex --lib` - `cargo test -p paimon --test pk_vector_batch_test` - `cargo test -p paimon --test pk_vector_java_fixture_test` - `cargo fmt --all -- --check` - `git diff --check` ### API and Format No public API or storage-format changes. The existing batch-search result ordering and error behavior are preserved. ### Documentation No user-facing documentation changes are required. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
