pub struct PartitionGuardSet { /* private fields */ }Expand description
A set of partition guards managed by a single node.
Implementations§
Source§impl PartitionGuardSet
impl PartitionGuardSet
Sourcepub fn remove(&mut self, partition_id: u32) -> Option<PartitionGuard>
pub fn remove(&mut self, partition_id: u32) -> Option<PartitionGuard>
Remove a guard for a partition.
Sourcepub fn check(&self, partition_id: u32) -> Result<(), EpochError>
pub fn check(&self, partition_id: u32) -> Result<(), EpochError>
Check that a partition is still owned at the expected epoch.
§Errors
Returns EpochError::NotTracked if the partition is not in the set,
or EpochError::Fenced if the epoch has changed.
Sourcepub fn get(&self, partition_id: u32) -> Option<&PartitionGuard>
pub fn get(&self, partition_id: u32) -> Option<&PartitionGuard>
Get a guard by partition ID.
Sourcepub fn iter(&self) -> impl Iterator<Item = (&u32, &PartitionGuard)>
pub fn iter(&self) -> impl Iterator<Item = (&u32, &PartitionGuard)>
Iterate over all guards.
Sourcepub fn update_epoch(&self, partition_id: u32, new_epoch: u64)
pub fn update_epoch(&self, partition_id: u32, new_epoch: u64)
Update the cached epoch for a partition from Raft state.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for PartitionGuardSet
impl RefUnwindSafe for PartitionGuardSet
impl Send for PartitionGuardSet
impl Sync for PartitionGuardSet
impl Unpin for PartitionGuardSet
impl UnsafeUnpin for PartitionGuardSet
impl UnwindSafe for PartitionGuardSet
Blanket Implementations§
§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
§type ArchivedMetadata = ()
type ArchivedMetadata = ()
The archived version of the pointer metadata for this type.
§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
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§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§impl<T> LayoutRaw for T
impl<T> LayoutRaw for T
§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.