Struct mz_persist_client::internal::metrics::MetricsConsensus
source · pub struct MetricsConsensus {
consensus: Arc<dyn Consensus>,
metrics: Arc<Metrics>,
}
Fields§
§consensus: Arc<dyn Consensus>
§metrics: Arc<Metrics>
Implementations§
source§impl MetricsConsensus
impl MetricsConsensus
pub fn new(consensus: Arc<dyn Consensus>, metrics: Arc<Metrics>) -> Self
fn on_err(alerts_metrics: &AlertsMetrics, err: &ExternalError)
Trait Implementations§
source§impl Consensus for MetricsConsensus
impl Consensus for MetricsConsensus
source§fn list_keys(&self) -> ResultStream<'_, String>
fn list_keys(&self) -> ResultStream<'_, String>
Returns all the keys ever created in the consensus store.
source§fn head<'life0, 'life1, 'async_trait>(
&'life0 self,
key: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<Option<VersionedData>, ExternalError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn head<'life0, 'life1, 'async_trait>(
&'life0 self,
key: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<Option<VersionedData>, ExternalError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Returns a recent version of
data
, and the corresponding sequence number, if
one exists at this location.source§fn compare_and_set<'life0, 'life1, 'async_trait>(
&'life0 self,
key: &'life1 str,
expected: Option<SeqNo>,
new: VersionedData,
) -> Pin<Box<dyn Future<Output = Result<CaSResult, ExternalError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn compare_and_set<'life0, 'life1, 'async_trait>(
&'life0 self,
key: &'life1 str,
expected: Option<SeqNo>,
new: VersionedData,
) -> Pin<Box<dyn Future<Output = Result<CaSResult, ExternalError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Update the VersionedData stored at this location to
new
, iff the
current sequence number is exactly expected
and new
’s sequence
number > the current sequence number. Read moresource§fn scan<'life0, 'life1, 'async_trait>(
&'life0 self,
key: &'life1 str,
from: SeqNo,
limit: usize,
) -> Pin<Box<dyn Future<Output = Result<Vec<VersionedData>, ExternalError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn scan<'life0, 'life1, 'async_trait>(
&'life0 self,
key: &'life1 str,
from: SeqNo,
limit: usize,
) -> Pin<Box<dyn Future<Output = Result<Vec<VersionedData>, ExternalError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Return
limit
versions of data stored for this key
at sequence numbers >= from
,
in ascending order of sequence number. Read moresource§fn truncate<'life0, 'life1, 'async_trait>(
&'life0 self,
key: &'life1 str,
seqno: SeqNo,
) -> Pin<Box<dyn Future<Output = Result<usize, ExternalError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn truncate<'life0, 'life1, 'async_trait>(
&'life0 self,
key: &'life1 str,
seqno: SeqNo,
) -> Pin<Box<dyn Future<Output = Result<usize, ExternalError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Deletes all historical versions of the data stored at
key
that are <
seqno
, iff seqno
<= the current sequence number. Read moreAuto Trait Implementations§
impl Freeze for MetricsConsensus
impl !RefUnwindSafe for MetricsConsensus
impl Send for MetricsConsensus
impl Sync for MetricsConsensus
impl Unpin for MetricsConsensus
impl !UnwindSafe for MetricsConsensus
Blanket Implementations§
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> FutureExt for T
impl<T> FutureExt for T
source§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
source§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
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> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T
in a tonic::Request
Creates a shared type from an unshared type.
source§impl<T> Pointable for T
impl<T> Pointable for T
source§impl<P, R> ProtoType<R> for Pwhere
R: RustType<P>,
impl<P, R> ProtoType<R> for Pwhere
R: RustType<P>,
source§fn into_rust(self) -> Result<R, TryFromProtoError>
fn into_rust(self) -> Result<R, TryFromProtoError>
See
RustType::from_proto
.source§fn from_rust(rust: &R) -> P
fn from_rust(rust: &R) -> P
See
RustType::into_proto
.source§impl<'a, S, T> Semigroup<&'a S> for Twhere
T: Semigroup<S>,
impl<'a, S, T> Semigroup<&'a S> for Twhere
T: Semigroup<S>,
source§fn plus_equals(&mut self, rhs: &&'a S)
fn plus_equals(&mut self, rhs: &&'a S)
The method of
std::ops::AddAssign
, for types that do not implement AddAssign
.