pub struct StartOptions {
pub namespace: Option<String>,
pub idempotency_key: Option<String>,
pub routing_key: Option<String>,
pub task_queue: Option<String>,
pub display_name: Option<String>,
}Expand description
Options accepted by Client::start.
Fields§
§namespace: Option<String>Namespace override for this start request.
idempotency_key: Option<String>Caller-supplied idempotency key for safe local retry replay.
The current AW protobuf has not added an idempotency field yet, so this is
enforced at the SDK boundary without inventing a client-owned wire field.
Reusing a key for a different start request returns
ClientError::AlreadyExists.
routing_key: Option<String>R-4 steered-start routing key. When set, the cluster steers this start to
shard_for(routing_key)’s owner (forwarding there when the dialed node is
not the owner). None keeps the default unsteered placement.
task_queue: Option<String>Optional default task queue for this workflow’s activities. When set, the
server records it durably on the start (the namespace × task_queue
targeting story); None keeps the namespace’s default queue.
display_name: Option<String>Optional operator-facing display name for the workflow this start
creates (#211). When set, the server records it durably on the start as
the aion.display_name search attribute; None starts it unnamed (it
shows its bare UUID).
A LABEL over the UUID identity, never an address: no SDK call resolves a
workflow by name. It is deliberately NOT part of the idempotency
fingerprint — see StartOutcome::display_name_not_applied for what
happens when a reused key carries a different name.
You name the run you are starting, but the label READS BACK per workflow: the recorded attribute carries no run id, so every reader folds it over the whole history, last write wins. A continue-as-new successor of this run inherits the name, and describing any run of the workflow returns whatever name was recorded most recently.
Trait Implementations§
Source§impl Clone for StartOptions
impl Clone for StartOptions
Source§fn clone(&self) -> StartOptions
fn clone(&self) -> StartOptions
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 StartOptions
impl Debug for StartOptions
Source§impl Default for StartOptions
impl Default for StartOptions
Source§fn default() -> StartOptions
fn default() -> StartOptions
impl Eq for StartOptions
Source§impl PartialEq for StartOptions
impl PartialEq for StartOptions
impl StructuralPartialEq for StartOptions
Auto Trait Implementations§
impl Freeze for StartOptions
impl RefUnwindSafe for StartOptions
impl Send for StartOptions
impl Sync for StartOptions
impl Unpin for StartOptions
impl UnsafeUnpin for StartOptions
impl UnwindSafe for StartOptions
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
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<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
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