pub struct DbFecGroupMeta {
pub magic: [u8; 8],
pub version: u32,
pub page_size: u32,
pub start_pgno: u32,
pub group_size: u32,
pub r_repair: u32,
pub object_id: [u8; 16],
pub source_page_xxh3_128: Vec<[u8; 16]>,
pub db_gen_digest: [u8; 16],
pub checksum: u64,
}Expand description
Per-group metadata stored in the .db-fec sidecar.
Fields§
§magic: [u8; 8]§version: u32§page_size: u32§start_pgno: u32§group_size: u32§r_repair: u32§object_id: [u8; 16]Content-addressed: Trunc128(BLAKE3(domain || canonical)).
source_page_xxh3_128: Vec<[u8; 16]>Per-source-page xxh3_128 hashes; length == group_size.
db_gen_digest: [u8; 16]Must match DbFecHeader.db_gen_digest.
checksum: u64Implementations§
Source§impl DbFecGroupMeta
impl DbFecGroupMeta
Sourcepub fn new(
page_size: u32,
start_pgno: u32,
group_size: u32,
r_repair: u32,
source_page_xxh3_128: Vec<[u8; 16]>,
db_gen_digest: [u8; 16],
) -> Self
pub fn new( page_size: u32, start_pgno: u32, group_size: u32, r_repair: u32, source_page_xxh3_128: Vec<[u8; 16]>, db_gen_digest: [u8; 16], ) -> Self
Create a new group meta. Computes object_id and checksum automatically.
Sourcepub fn serialized_size(&self) -> usize
pub fn serialized_size(&self) -> usize
Total serialized size.
Sourcepub fn serialized_size_for(group_size: u32) -> usize
pub fn serialized_size_for(group_size: u32) -> usize
Serialized size for a group with the given group_size.
Sourcepub fn from_bytes(buf: &[u8]) -> Result<Self>
pub fn from_bytes(buf: &[u8]) -> Result<Self>
Deserialize from bytes.
Trait Implementations§
Source§impl Clone for DbFecGroupMeta
impl Clone for DbFecGroupMeta
Source§fn clone(&self) -> DbFecGroupMeta
fn clone(&self) -> DbFecGroupMeta
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for DbFecGroupMeta
impl Debug for DbFecGroupMeta
Source§impl PartialEq for DbFecGroupMeta
impl PartialEq for DbFecGroupMeta
impl Eq for DbFecGroupMeta
impl StructuralPartialEq for DbFecGroupMeta
Auto Trait Implementations§
impl Freeze for DbFecGroupMeta
impl RefUnwindSafe for DbFecGroupMeta
impl Send for DbFecGroupMeta
impl Sync for DbFecGroupMeta
impl Unpin for DbFecGroupMeta
impl UnsafeUnpin for DbFecGroupMeta
impl UnwindSafe for DbFecGroupMeta
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, _span: NoopSpan) -> Self
fn instrument(self, _span: NoopSpan) -> Self
Instruments this future with a span (no-op when disabled).
Source§fn in_current_span(self) -> Self
fn in_current_span(self) -> Self
Instruments this future with the current span (no-op when disabled).