Reliability & Delivery · Distributed Consistency

Saga

Break a distributed transaction into local transactions connected by commands or events. Each completed step has a compensating action so failures can be recovered without a global database transaction.

distributed-transactionorchestrationcompensation
The problem
How can a long-running business transaction remain consistent when it spans multiple independent services?
GateSift summary based on Microsoft Azure Architecture Center guidance. The wording, visualization, Azure mapping and analyzer context are original GateSift material.
Original GateSift visualization

How Saga works

Local transactions are coordinated as a long-running business process with compensation for failed paths.

Distributed business transaction
Saga coordinator
Completed
Compensated
1

Split the business transaction into independently committed local steps.

2

Coordinate the next command or event while preserving durable saga and correlation state.

3

Complete all steps or invoke compensating actions to restore a valid business outcome.

GateSift explanation

What this pattern helps you decide

Break a distributed transaction into local transactions connected by commands or events. Each completed step has a compensating action so failures can be recovered without a global database transaction.

Which failure mode or capacity limit is this pattern intended to contain?
Which thresholds, deadlines, state or compensation data must remain durable?
How will operators know the pattern activated and whether recovery succeeded?
Common Azure implementations

Where you may see it

  • Logic Apps or Durable Functions orchestration
  • Service Bus commands and events across bounded contexts
  • Stateful process managers coordinating local transactions
GateSift relevance

How the analyzers can surface it

  • Long-running workflows with several business side effects
  • Compensation paths paired with orchestration state
  • Correlation identifiers connecting commands, events and recovery actions

Pattern detection is contextual. GateSift should present these as architectural signals, not claim a pattern is implemented solely because one policy statement or adapter exists.

Source guidance and attribution

This page links to Microsoft Azure Architecture Center for the source architecture guidance. GateSift summaries, diagrams, Azure examples and analyzer signals are original. No endorsement by Microsoft is implied.

Back to pattern library