pub struct BmpBlockMeta {
pub id: BmpBlockId,
pub size_bytes: u64,
pub src_node: String,
pub dst_node: Option<String>,
pub tier: u8,
pub access_frequency: f64,
pub last_accessed: u64,
pub is_pinned: bool,
}Expand description
Metadata tracked for each registered block.
Fields§
§id: BmpBlockId32-byte content-addressed identifier.
size_bytes: u64Compressed or raw byte size of the block.
src_node: StringLogical node or volume currently holding the block.
dst_node: Option<String>Intended destination node (set once a plan is associated).
tier: u8Storage tier index (0 = fastest / hottest).
access_frequency: f64Exponentially-smoothed access frequency (accesses per unit time).
last_accessed: u64Timestamp (nanoseconds) of the most recent access.
is_pinned: boolWhen true the block must not be migrated.
Implementations§
Trait Implementations§
Source§impl Clone for BmpBlockMeta
impl Clone for BmpBlockMeta
Source§fn clone(&self) -> BmpBlockMeta
fn clone(&self) -> BmpBlockMeta
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for BmpBlockMeta
impl RefUnwindSafe for BmpBlockMeta
impl Send for BmpBlockMeta
impl Sync for BmpBlockMeta
impl Unpin for BmpBlockMeta
impl UnsafeUnpin for BmpBlockMeta
impl UnwindSafe for BmpBlockMeta
Blanket Implementations§
impl<T> Allocation for T
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more