Cascade ID
Identifies a two-phase commit transaction boundary. Groups uncommitted events that should commit or rollback together.
Key distinction from correlation_id:
| ID | Question Answered | Scope |
|---|---|---|
correlation_id | What business workflow does this belong to? | Entire workflow lifecycle |
cascade_id | What should commit/rollback together? | Single 2PC attempt |
Many cascades can belong to one correlation:
- PM retry: same
correlation_id, newcascade_idper attempt - Multi-step workflow: same
correlation_id,cascade_idper atomic phase
Behavior:
- Presence of
cascade_idtriggerscommitted=falsewrites - Framework generates
cascade_idfor atomic execution - Events with same
cascade_idare confirmed or revoked together - Empty
cascade_idmeans standard committed-immediately semantics
Query patterns:
- PM state queries use
correlation_id(complete workflow view) - Commit/rollback operates on
cascade_id(transaction boundary)