pub struct OrderingSnapshot {
pub enabled: bool,
pub sessions: Vec<OrderingSessionSnapshot>,
pub skipped_session_count: usize,
}Expand description
Diagnostic projection of receiver-local ordering state.
Each OrderingSessionSnapshot corresponds to one sender session keyed
by SeqInfo::Session.session_id. Sequence progress here means
“released into the actor work queue”, not “processed by the actor handler”.
Carries completeness metadata so callers can distinguish “no stalled sessions” from “snapshot was partial” from “buffering is disabled”.
Fields§
§enabled: boolWhether reorder buffering is enabled. When false, messages
bypass sequencing, and sessions is empty even under load.
sessions: Vec<OrderingSessionSnapshot>Per-session entries, sorted by session_id for stable output.
Includes idle (drained) sessions with buffered_count == 0.
skipped_session_count: usizeSessions that could not be observed because sequencing state was
busy when we tried to snapshot. NOT in sessions. Zero means
the snapshot is complete.
Implementations§
Source§impl OrderingSnapshot
impl OrderingSnapshot
Sourcepub fn is_complete(&self) -> bool
pub fn is_complete(&self) -> bool
True when no session was skipped, i.e., every live session’s
state was successfully captured in sessions.
Trait Implementations§
Source§impl AttrValue for OrderingSnapshot
impl AttrValue for OrderingSnapshot
Source§impl Clone for OrderingSnapshot
impl Clone for OrderingSnapshot
Source§fn clone(&self) -> OrderingSnapshot
fn clone(&self) -> OrderingSnapshot
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for OrderingSnapshot
impl Debug for OrderingSnapshot
Source§impl<'de> Deserialize<'de> for OrderingSnapshot
impl<'de> Deserialize<'de> for OrderingSnapshot
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl Display for OrderingSnapshot
impl Display for OrderingSnapshot
Source§impl FromStr for OrderingSnapshot
impl FromStr for OrderingSnapshot
Source§impl Named for OrderingSnapshot
impl Named for OrderingSnapshot
Source§fn typename() -> &'static str
fn typename() -> &'static str
Source§fn typehash() -> u64
fn typehash() -> u64
Source§fn typeid() -> TypeId
fn typeid() -> TypeId
Source§impl PartialEq for OrderingSnapshot
impl PartialEq for OrderingSnapshot
Source§impl Serialize for OrderingSnapshot
impl Serialize for OrderingSnapshot
impl StructuralPartialEq for OrderingSnapshot
Auto Trait Implementations§
impl Freeze for OrderingSnapshot
impl RefUnwindSafe for OrderingSnapshot
impl Send for OrderingSnapshot
impl Sync for OrderingSnapshot
impl Unpin for OrderingSnapshot
impl UnsafeUnpin for OrderingSnapshot
impl UnwindSafe for OrderingSnapshot
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> FutureExt for T
impl<T> FutureExt for T
§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
§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>
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 more§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T in a tonic::Request§impl<L> LayerExt<L> for L
impl<L> LayerExt<L> for L
§fn named_layer<S>(&self, service: S) -> Layered<<L as Layer<S>>::Service, S>where
L: Layer<S>,
fn named_layer<S>(&self, service: S) -> Layered<<L as Layer<S>>::Service, S>where
L: Layer<S>,
Layered].