pub struct MetadataCache {
pub applied_index: u64,
pub routing_version: u64,
pub collections: HashMap<(u32, String), Vec<(String, String)>>,
pub members: HashMap<u64, String>,
}Expand description
Local cache of the metadata state, updated from the Raft log.
Each node maintains this cache. The leader writes to it; followers apply committed entries from the Raft log to stay consistent.
Fields§
§applied_index: u64Applied log index — entries up to this index are reflected in cache.
routing_version: u64Cached routing table version.
collections: HashMap<(u32, String), Vec<(String, String)>>Collection schemas: (tenant_id, collection_name) → field definitions.
members: HashMap<u64, String>Node membership: node_id → address.
Implementations§
Source§impl MetadataCache
impl MetadataCache
pub fn new() -> Self
Sourcepub fn apply(&mut self, index: u64, entry: &MetadataEntry)
pub fn apply(&mut self, index: u64, entry: &MetadataEntry)
Apply a metadata entry from the Raft log.
Called by the Raft commit applier when a metadata entry is committed. Updates the local cache to reflect the change.
Sourcepub fn serialize_entry(entry: &MetadataEntry) -> Result<Vec<u8>>
pub fn serialize_entry(entry: &MetadataEntry) -> Result<Vec<u8>>
Serialize a metadata entry for Raft proposal.
Sourcepub fn deserialize_entry(data: &[u8]) -> Result<MetadataEntry>
pub fn deserialize_entry(data: &[u8]) -> Result<MetadataEntry>
Deserialize a metadata entry from Raft log data.
Trait Implementations§
Source§impl Clone for MetadataCache
impl Clone for MetadataCache
Source§fn clone(&self) -> MetadataCache
fn clone(&self) -> MetadataCache
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 MetadataCache
impl Debug for MetadataCache
Source§impl Default for MetadataCache
impl Default for MetadataCache
Source§fn default() -> MetadataCache
fn default() -> MetadataCache
Returns the “default value” for a type. Read more
Auto Trait Implementations§
impl Freeze for MetadataCache
impl RefUnwindSafe for MetadataCache
impl Send for MetadataCache
impl Sync for MetadataCache
impl Unpin for MetadataCache
impl UnsafeUnpin for MetadataCache
impl UnwindSafe for MetadataCache
Blanket Implementations§
Source§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
Source§type ArchivedMetadata = ()
type ArchivedMetadata = ()
The archived version of the pointer metadata for this type.
Source§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata,
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata
Converts some archived metadata to the pointer metadata for itself.
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<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> LayoutRaw for T
impl<T> LayoutRaw for T
Source§fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
Returns the layout of the type.
Source§impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
Source§unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
Returns whether the given value has been niched. Read more
Source§fn resolve_niched(out: Place<NichedOption<T, N1>>)
fn resolve_niched(out: Place<NichedOption<T, N1>>)
Writes data to
out indicating that a T is niched.