apache / apache/paimon-cpp

[Feature] Reimplement bitmap Global Index for compatibility with Paimon Java

未关闭
#316 0 条评论 0 个 reaction 已指派 1 人 已被 @lxy-9602 认领 在 GitHub 查看
enhancement
主要语言
C++
星标
65
派生
25
平均合并
2 天 12 小时
30 天内合并 PR
80

描述

### Search before asking

- [x] I searched in the [issues](https://github.com/apache/paimon-cpp/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](https://github.com/apache/paimon/pull/8276) and subsequently integrated with the sorted global-index build path in [apache/paimon#8283](https://github.com/apache/paimon/pull/8283).

### Are you willing to submit a PR?

- [x] I am willing to submit a PR!

贡献指南

打开贡献指南

评估

这个 Issue 还没有评估数据。

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。