pub struct VecMeta {
pub dim: u64,
pub seed: u64,
pub bits: u64,
pub max: u64,
pub medoid: u64,
pub watermark: u64,
}Expand description
Everything one vector field needs to be read back correctly, in one row
(keys::catalog_field(CAT_VEC, field)). Nothing here is derivable from
the vectors:
dimis the field’s width; a row of another width is corruption at birth, refused rather than discovered as a garbage distance later.seedandbitsARE the fingerprint recipe – (dim, seed, bits) is the whole of it, so any process, at any later date, re-derives the encoder that wrote the codes rather than the one the code’s defaults happen to produce that day.maxis the highest id that ever carried a vector for this field.nearest_parpartitions [1, max];next_idis wrong for it when vectors are set on caller-managed ids with no nodes (caught by the parallel-vs-serial equality test: partitions covered almost nothing and the test diverged).medoidandwatermarkare the nav tier’s start point and fast resume point. 0 means “no graph yet”, which is a usable sentinel because the id allocator reserves 0 and hands out nothing below 1. The watermark rides each fold insert; ids written behind it are recorded separately inCAT_NAV_PENDING, so a crash resumes from facts rather than ordering.
Fields§
§dim: u64§seed: u64§bits: u64§max: u64§medoid: u64§watermark: u64Implementations§
Trait Implementations§
impl Copy for VecMeta
impl Eq for VecMeta
impl StructuralPartialEq for VecMeta
Auto Trait Implementations§
impl Freeze for VecMeta
impl RefUnwindSafe for VecMeta
impl Send for VecMeta
impl Sync for VecMeta
impl Unpin for VecMeta
impl UnsafeUnpin for VecMeta
impl UnwindSafe for VecMeta
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