Spectre.Operation.Attempt (Spectre v0.3.0)

Copy Markdown View Source

Revision- and epoch-fenced identity for one temporary Runner.

Summary

Types

t()

@type t() :: %Spectre.Operation.Attempt{
  base_revision: non_neg_integer(),
  context_revision: non_neg_integer(),
  control_generation: non_neg_integer(),
  epoch: String.t(),
  fencing_token: String.t(),
  id: String.t(),
  idempotency_key: String.t(),
  loop_id: String.t(),
  loop_kind: :work | :vigil | :directive,
  metadata: map(),
  number: pos_integer(),
  operation: atom() | String.t(),
  request_id: String.t(),
  retry_number: non_neg_integer(),
  side_effect: atom(),
  snapshot_id: String.t(),
  started_at: non_neg_integer(),
  timeout: pos_integer(),
  trigger_generation: non_neg_integer()
}

Functions

validate(attempt)

@spec validate(t()) :: :ok | {:error, term()}