RequestSeal.Replay.Error (RequestSeal v0.5.2)

Copy Markdown View Source

Bounded replay boundary failures, without adapter diagnostics or caller bytes.

retryable is always false: a timeout may have committed and is indeterminate.

Reasons:

  • :invalid_store - the store is not a RequestSeal.Replay.Store whose loaded adapter exports claim/3 and sweep/3, or an adapter's store/2 or ddl/1 rejected its arguments.
  • :invalid_claim - the claim fails RequestSeal.Replay.Claim.valid?/1.
  • :invalid_options - the options are not exactly timeout: 1..300_000.
  • :store_unavailable - the adapter reported that the store is unreachable.
  • :store_timeout - the adapter reported a timeout, or the operation deadline expired; the claim may have been committed.
  • :store_full - the adapter reported that the store is at capacity.
  • :store_failed - the adapter reported any other failure or returned an unexpected value, or the operation worker exited.

Summary

Types

reason()

@type reason() ::
  :invalid_store
  | :invalid_claim
  | :invalid_options
  | :store_unavailable
  | :store_timeout
  | :store_full
  | :store_failed

t()

@type t() :: %RequestSeal.Replay.Error{reason: reason(), retryable: false}