pub struct PartitionIndexEntry {
pub key_digest: Arc<[u8]>,
pub raw_key: Option<Arc<[u8]>>,
pub data_offset: u64,
pub data_size: u32,
pub promoted_index: Option<PromotedIndexData>,
}Expand description
Partition index entry in Index.db
Fields§
§key_digest: Arc<[u8]>Raw partition key bytes (length-prefixed in the on-disk BIG/NB Index.db format).
NOTE (Issue #552): Despite the historical field name key_digest, this holds the
RAW partition key bytes, not an MD5 digest. The real Cassandra 5.0 NB Index.db entry
format is [key_len: u16 BE][raw key bytes][data_offset: vint][promoted_len: vint].
There is no 0x0010 marker and no MD5 digest on disk. The field name is retained to
avoid churn in the zero-copy lookup table and downstream callers; it is used directly
as the partition key (e.g. for RowKey). The leading u16 is the key length
(e.g. 0x0010 for a 16-byte UUID, 0x0026 for a 38-byte composite key).
raw_key: Option<Arc<[u8]>>Raw partition key bytes (mirror of key_digest, kept for API compatibility).
Always Some now that all entries carry their raw key.
data_offset: u64Offset in Data.db file
data_size: u32Size of partition data
promoted_index: Option<PromotedIndexData>Promoted index entries for wide partitions (optional)
Trait Implementations§
Source§impl Clone for PartitionIndexEntry
impl Clone for PartitionIndexEntry
Source§fn clone(&self) -> PartitionIndexEntry
fn clone(&self) -> PartitionIndexEntry
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more