pub struct CacheApplier { /* private fields */ }Expand description
Default applier that writes committed entries to an in-memory
MetadataCache. The cache is shared with the rest of the
process via Arc<RwLock<_>>.
Implementations§
Source§impl CacheApplier
impl CacheApplier
pub fn new(cache: Arc<RwLock<MetadataCache>>) -> Self
Sourcepub fn with_live_state(
self,
topology: Arc<RwLock<ClusterTopology>>,
routing: Arc<RwLock<RoutingTable>>,
) -> Self
pub fn with_live_state( self, topology: Arc<RwLock<ClusterTopology>>, routing: Arc<RwLock<RoutingTable>>, ) -> Self
Extend this applier with live topology/routing handles. When
set, committed TopologyChange and RoutingChange entries
mutate the handles in place in addition to the in-memory
history log kept in MetadataCache. Backward-compatible:
existing callers that don’t attach handles see no behaviour
change.
Sourcepub fn with_migration_state(
self,
migration_state: SharedMigrationStateTable,
) -> Self
pub fn with_migration_state( self, migration_state: SharedMigrationStateTable, ) -> Self
Attach a migration state table so that committed
MigrationCheckpoint and MigrationAbort entries are
durably persisted. Backward-compatible: existing callers that
don’t manage migrations can omit this.
Sourcepub fn with_token_state(self, token_state: SharedTokenStateMirror) -> Self
pub fn with_token_state(self, token_state: SharedTokenStateMirror) -> Self
Attach a token state mirror so that committed
JoinTokenTransition entries are reflected into the shared
mirror immediately after apply. The same Arc must be passed to
RaftBackedTokenStore::new so both sides share the same table.
Backward-compatible: existing callers that don’t use join tokens
omit this.
pub fn cache(&self) -> Arc<RwLock<MetadataCache>> ⓘ
Trait Implementations§
Source§impl Clone for CacheApplier
impl Clone for CacheApplier
Source§fn clone(&self) -> CacheApplier
fn clone(&self) -> CacheApplier
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreAuto Trait Implementations§
impl Freeze for CacheApplier
impl RefUnwindSafe for CacheApplier
impl Send for CacheApplier
impl Sync for CacheApplier
impl Unpin for CacheApplier
impl UnsafeUnpin for CacheApplier
impl UnwindSafe for CacheApplier
Blanket Implementations§
Source§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
Source§type ArchivedMetadata = ()
type ArchivedMetadata = ()
Source§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata,
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
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
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>
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
Source§fn resolve_niched(out: Place<NichedOption<T, N1>>)
fn resolve_niched(out: Place<NichedOption<T, N1>>)
out indicating that a T is niched.Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
self from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
self is actually part of its subset T (and can be converted to it).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
self to the equivalent element of its superset.