Resilience icon

Resilience

Retry, concurrency, and dead-letter utilities for workflows

Actions6

Concurrency Gate → Inspect

AI-generated

Summary

Inspect the concurrency gate for each input item using its Gate Key. The operation removes expired locks, reads the current lock state, and routes each item through the Allowed output with gate metadata; it does not acquire or release locks.

Inputs

  • Gate Key (required) — Key for the gate to inspect, such as a customer ID or external service name.
  • Max Concurrent — Maximum active locks for this gate key, included in the returned metadata; defaults to 1.
  • Lock TTL Seconds — TTL setting shown for this operation, defaulting to 300 seconds. Inspect cleans expired locks based on their stored expiry times; it does not apply this setting to existing locks.
  • Preserve Original Item — Defaults to true. Keeps incoming JSON and binary data when adding metadata; when false, the output JSON contains only the metadata.

Output shape

Two output branches: Allowed and Blocked. Inspect sends successfully processed items through Allowed and does not send items to Blocked.

Each Allowed item receives __concurrencyGate metadata containing the key, acquired: false, active lock count, configured maximum, reason, and the current lock list. Expired locks are removed before counting and listing. Existing locks are stored in workflow global static data. Errors go to Blocked when Continue On Fail is enabled; otherwise the node throws.

Links

Discussion