[Feature] Reimplement bitmap Global Index for compatibility with Paimon Java
@lxy-9602 is already working on this.
Since Sep 14, 2026.
Assessment
This issue has not been assessed yet.
Description
Search before asking
- I searched in the issues and found nothing similar.
Motivation
The bitmap Global Index in Paimon Java has undergone a major redesign. The bitmap Global Index currently implemented in Paimon C++ follows the legacy design and file format, so it is no longer compatible with the current Java implementation.
As a result, Paimon C++ cannot reliably read bitmap Global Index files produced by current Paimon Java, and indexes written by the existing C++ implementation are not interoperable with the new Java implementation. The current Paimon C++ documentation therefore marks bitmap Global Index as unsupported.
Solution
Reimplement bitmap Global Index in Paimon C++ based on the current Paimon Java design and file format. The work should cover:
- The current index reader, writer, and factory behavior.
- Predicate evaluation and null/non-null bitmap semantics.
- Compatibility tests using indexes produced by Paimon Java, together with C++ round-trip tests.
- Cleanup or isolation of the legacy implementation after the new implementation is validated.
I plan to work on this reimplementation and submit a follow-up PR.
Anything else?
The redesigned Java implementation was introduced in apache/paimon#8276 and subsequently integrated with the sorted global-index build path in apache/paimon#8283.
Are you willing to submit a PR?
- I am willing to submit a PR!
- Dominant language
- C++
- Stars
- 65
- Forks
- 29
- Avg merge
- 2d 30m
- Merged PRs (30d)
- 77
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from apache/paimon-cpp
-
enhancement
apache/paimon-cpp#381 · 1 assignee ·
-
Difficulty 4/5 3-5 days Newbie friendliness 30/100
apache/paimon-cpp#375 · 1 assignee ·
-
enhancement
Difficulty 5/5 Over a week Newbie friendliness 30/100
apache/paimon-cpp#369 · 1 assignee ·
-
enhancement
Difficulty 5/5 Over a week Newbie friendliness 45/100
apache/paimon-cpp#361 · 1 assignee ·
-
bug
Difficulty 4/5 3-5 days Newbie friendliness 68/100
apache/paimon-cpp#347 · 1 assignee ·
All issues in apache/paimon-cpp
Similar issues
-
enhancement
Difficulty 1/5 Under an hour Newbie friendliness 88/100
QuantStack/git2cpp#187 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 86/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
mlcommons/mobile_app_open#1182 ·
-
Needs-Triage
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
microsoft/winget-cli#6547 ·
-
Difficulty 1/5 Under an hour Newbie friendliness 90/100
AXERA-TECH/ax-llm#77 ·