pub enum WorkerSessionEvent {
Task(ProtoActivityTask),
Drain,
ResultAck {
workflow_id: WorkflowId,
activity_id: ActivityId,
},
Cancel {
workflow_id: WorkflowId,
activity_id: ActivityId,
},
}Expand description
Event pushed by the worker session receive stream.
Variants§
Task(ProtoActivityTask)
A new activity task to execute.
Drain
Server-initiated drain: the server is going away (restart, deploy, rebalance). The worker finishes in-flight work, reports what it can, stops expecting new tasks, and reconnects after the schedule’s initial backoff. A drain frame latches for the session: the eventual stream end — clean or abrupt — is drain-class and consumes no drop budget.
ResultAck
The server consumed the identified ActivityResult frame; the worker
may stop re-reporting it. Clears the matching unacked-tracker entry.
Fields
workflow_id: WorkflowIdWorkflow owning the acknowledged result.
activity_id: ActivityIdActivity whose result was acknowledged.
Cancel
Cooperative cancellation for an in-flight activity.
The current AW worker proto in this worktree does not yet carry this
frame, but fake sessions can emit it and the runtime handles it without
forcing task termination. When AW lands the wire variant,
decode_server_message should map it to this event.
Fields
workflow_id: WorkflowIdWorkflow owning the activity.
activity_id: ActivityIdActivity to mark cancelled.
Trait Implementations§
Source§impl Clone for WorkerSessionEvent
impl Clone for WorkerSessionEvent
Source§fn clone(&self) -> WorkerSessionEvent
fn clone(&self) -> WorkerSessionEvent
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for WorkerSessionEvent
impl Debug for WorkerSessionEvent
impl Eq for WorkerSessionEvent
Source§impl PartialEq for WorkerSessionEvent
impl PartialEq for WorkerSessionEvent
Source§fn eq(&self, other: &WorkerSessionEvent) -> bool
fn eq(&self, other: &WorkerSessionEvent) -> bool
self and other values to be equal, and is used by ==.impl StructuralPartialEq for WorkerSessionEvent
Auto Trait Implementations§
impl Freeze for WorkerSessionEvent
impl RefUnwindSafe for WorkerSessionEvent
impl Send for WorkerSessionEvent
impl Sync for WorkerSessionEvent
impl Unpin for WorkerSessionEvent
impl UnsafeUnpin for WorkerSessionEvent
impl UnwindSafe for WorkerSessionEvent
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,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
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> 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