Relationship · Introduces Risk
Source: Pattern·Target: Failure Mode
Summary
Event-sourced systems that open a database transaction for the full event application cycle create long-running transactions that prevent VACUUM from reclaiming MVCC dead tuples.
Evidence
- ·long_running_transaction_bloat lists event_sourcing in affects_patterns and is triggered by batch processing in a single large transaction (failure_modes/long_running_transaction_bloat.yaml)
- ·event_sourcing runs on postgresql and requires projection-rebuild (full-stream replay) tooling; normal appends are low-contention (patterns/event_sourcing.yaml)
Evidence grounding
Grounded, 2 supporting itemsThe risk is a full event-replay/rebuild wrapped in one PostgreSQL transaction, not the normal append path.