You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@paimon.apache.org by "lszskye (via GitHub)" <gi...@apache.org> on 2026/06/10 03:35:29 UTC
[PR] feat: add BTree global index core components [paimon-cpp]
lszskye opened a new pull request, #74:
URL: https://github.com/apache/paimon-cpp/pull/74
## feat: add BTree global index core components
### Changes
#### `BtreeDefs`
- Constants struct defining BTree index configuration keys and default values: compression algorithm, compression level, block size, cache size, high-priority pool ratio, and read buffer size. Also defines the `"btree"` identifier.
#### `BTreeFileFooter`
- Footer structure for BTree index files containing bloom filter handle, index block handle, and null bitmap handle. Supports versioned serialization/deserialization via `Read()`/`Write()` with a magic number (`0x50425449`) for validation. Fixed encoding length of 52 bytes.
#### `BTreeFileMetaSelector`
- Implements `FunctionVisitor<std::vector<GlobalIndexIOMeta>>` to select candidate BTree index files based on filter predicates.
#### `BTreeIndexMeta`
- Per-file metadata holding serialized first key, last key, and a `has_nulls` flag. Keys can be null when the entire file contains only null values (`OnlyNulls()`). Provides `Serialize()`/`Deserialize()` for binary persistence with a 9-byte fixed header (two 4-byte key lengths + 1-byte null flag).
#### `KeySerializer`
- Static utility for serializing `Literal` values to `Bytes` and deserializing `MemorySlice` back to `Literal`, supporting all Paimon data types. Provides `CreateComparator()` to build a `MemorySlice::SliceComparator` for binary key comparison based on Arrow data type.
### Tests
- `BTreeFileFooterTest`
- `BTreeFileMetaSelectorTest`
- `BTreeIndexMetaTest`
- `KeySerializerTest`
--
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: issues-unsubscribe@paimon.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] feat: add BTree global index core components [paimon-cpp]
Posted by "JingsongLi (via GitHub)" <gi...@apache.org>.
JingsongLi merged PR #74:
URL: https://github.com/apache/paimon-cpp/pull/74
--
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: issues-unsubscribe@paimon.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org