pub enum RuntimeProfile {
Data,
Witness,
}Expand description
Which planes a node boots.
Every node runs the control-plane supervisor (the vote path). The profile decides whether the data plane — storage engine, WAL, replication streaming — is constructed alongside it.
Variants§
Data
A data-bearing node: supervisor and data plane. Holds data, streams WAL, and can be promoted to primary.
Witness
A witness: the supervisor / vote path only. Holds no data, boots no data plane, and can never be promoted (ADR 0030).
Implementations§
Source§impl RuntimeProfile
impl RuntimeProfile
Sourcepub fn boots_data_plane(self) -> bool
pub fn boots_data_plane(self) -> bool
Does this profile boot the data plane (storage engine + WAL +
replication streaming)? Only RuntimeProfile::Data does — a witness
is supervisor-only.
Sourcepub fn boots_supervisor(self) -> bool
pub fn boots_supervisor(self) -> bool
The supervisor module runs on every profile — that is the whole point of the decoupled control plane (ADR 0030). A witness is the degenerate node that runs nothing else.
Sourcepub fn member_kind(self) -> MemberKind
pub fn member_kind(self) -> MemberKind
The membership kind this profile presents to the election quorum.
Trait Implementations§
Source§impl Clone for RuntimeProfile
impl Clone for RuntimeProfile
Source§fn clone(&self) -> RuntimeProfile
fn clone(&self) -> RuntimeProfile
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreimpl Copy for RuntimeProfile
Source§impl Debug for RuntimeProfile
impl Debug for RuntimeProfile
impl Eq for RuntimeProfile
Source§impl PartialEq for RuntimeProfile
impl PartialEq for RuntimeProfile
Source§fn eq(&self, other: &RuntimeProfile) -> bool
fn eq(&self, other: &RuntimeProfile) -> bool
self and other values to be equal, and is used by ==.impl StructuralPartialEq for RuntimeProfile
Auto Trait Implementations§
impl Freeze for RuntimeProfile
impl RefUnwindSafe for RuntimeProfile
impl Send for RuntimeProfile
impl Sync for RuntimeProfile
impl Unpin for RuntimeProfile
impl UnsafeUnpin for RuntimeProfile
impl UnwindSafe for RuntimeProfile
Blanket Implementations§
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<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<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.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>
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>
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 moreSource§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T in a tonic::Request