pub struct MeshFailure {
pub actor_mesh_name: Option<String>,
pub event: ActorSupervisionEvent,
pub crashed_ranks: Vec<usize>,
}Expand description
Message about a supervision failure on a mesh of actors instead of a single actor.
Fields§
§actor_mesh_name: Option<String>Mesh name carried by the MeshFailure construction site,
when locally available. On the direct actor-handled path
this is the observing PythonActor’s mesh base name. On
controller-owned paths this is the monitored mesh name
supplied by the controller path.
event: ActorSupervisionEventThe supervision event on an actor located at mesh + rank.
crashed_ranks: Vec<usize>The set of crashed ranks in the mesh. Empty means the event applies to the whole mesh (e.g. mesh stop, controller timeout).
Implementations§
Source§impl MeshFailure
impl MeshFailure
Sourcepub fn contains_rank(&self, rank: usize) -> bool
pub fn contains_rank(&self, rank: usize) -> bool
Returns true if the given rank is part of this failure. A whole-mesh event (empty crashed_ranks) contains every rank.
Trait Implementations§
Source§impl Bind for MeshFailure
impl Bind for MeshFailure
Source§impl Clone for MeshFailure
impl Clone for MeshFailure
Source§fn clone(&self) -> MeshFailure
fn clone(&self) -> MeshFailure
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for MeshFailure
impl Debug for MeshFailure
Source§impl<'de> Deserialize<'de> for MeshFailure
impl<'de> Deserialize<'de> for MeshFailure
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 MeshFailure
impl Display for MeshFailure
Source§impl Handler<MeshFailure> for GlobalClientActor
MeshFailure is a terminal supervision signal for an ActorMesh.
impl Handler<MeshFailure> for GlobalClientActor
MeshFailure is a terminal supervision signal for an ActorMesh.
The process-global root client should never be a consumer of mesh-level supervision failures during normal operation: those events are expected to be observed and handled by the owning mesh/controller, not by the global client.
In processes that create and destroy multiple meshes (e.g.,
benchmarks), MeshFailure events may arrive here during or after
mesh teardown. Log loudly but do not crash — the global client is
a monitor and must preserve forward progress.
Source§impl Handler<MeshFailure> for WrapperActor
impl Handler<MeshFailure> for WrapperActor
Source§impl Named for MeshFailure
impl Named for MeshFailure
Source§fn typename() -> &'static str
fn typename() -> &'static str
Source§fn typehash() -> u64
fn typehash() -> u64
Source§fn typeid() -> TypeId
fn typeid() -> TypeId
Source§fn port() -> u64
fn port() -> u64
Source§impl PartialEq for MeshFailure
impl PartialEq for MeshFailure
Source§impl Serialize for MeshFailure
impl Serialize for MeshFailure
Source§impl Unbind for MeshFailure
impl Unbind for MeshFailure
impl Accepts<MeshFailure> for GlobalClientActorwhere
MeshFailure: RemoteMessage,
impl Accepts<MeshFailure> for WrapperActorwhere
MeshFailure: RemoteMessage,
impl RemoteHandles<MeshFailure> for GlobalClientActorwhere
MeshFailure: RemoteMessage,
impl RemoteHandles<MeshFailure> for WrapperActorwhere
MeshFailure: RemoteMessage,
impl StructuralPartialEq for MeshFailure
Auto Trait Implementations§
impl Freeze for MeshFailure
impl RefUnwindSafe for MeshFailure
impl Send for MeshFailure
impl Sync for MeshFailure
impl Unpin for MeshFailure
impl UnsafeUnpin for MeshFailure
impl UnwindSafe for MeshFailure
Blanket Implementations§
§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
§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,
§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>
Source§impl<A, M> Handler<IndexedErasedUnbound<M>> for A
impl<A, M> Handler<IndexedErasedUnbound<M>> for A
§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].