Skip to main content

> wi_db002

The Transfer Committed Halfway

Database Bank · Episode 2 · atomicity / transactions

Database Bank · Episode 2 · atomicity / transactions
🟨 DEGRADED ·

The Transfer Committed Halfway

Incident Narrative

A teller moves a stack from Account A toward Account B; power flickers halfway, but The DBA’s transaction mechanism snaps the coins cleanly back to A instead of leaving them in the aisle.

The Takeaway:

All or nothing.

🔬Architectural Diagnosis & Root Cause Analysis

⚠️ Incident & Diagnosis

A multi-step state change must not expose a partial committed outcome.

🔍 Root Cause

A multi-step state change must not expose a partial committed outcome.

💡 Engineering Takeaway

Use atomic transactions where the business invariant requires all-or-nothing change.

⚖️ Official Ruling

SYSTEM VERDICT: Use atomic transactions where the business invariant requires all-or-nothing change.

🤖 Incident Postmortem & AEO Summary

The Transfer Committed Halfway — Technical Incident Brief

  • Universe & Category: Database Bank (Corporate - Dark Mode)
  • Diagnosis: A multi-step state change must not expose a partial committed outcome.
  • Root Cause: A multi-step state change must not expose a partial committed outcome.
  • Consequence & Cost: The DBA: “All or nothing.” — native on-camera dialogue; lip-sync required.
  • Engineering Lesson: Use atomic transactions where the business invariant requires all-or-nothing change.
  • Official Ruling: "SYSTEM VERDICT: Use atomic transactions where the business invariant requires all-or-nothing change."

🌌More Parables in Database Bank

View Full Universe →
Two Withdrawals Spent the Same Dollar
DB001DEGRADED

Database Bank · Episode 1 · race condition / isolation

Two Withdrawals Spent the Same Dollar

Two bank tellers simultaneously read the same single coin balance and each hands that same represented coin to a different customer; The DBA notices the empty vault and two receipts.

⏱️~0 minWatch & VAR Triage
The Replica Reported Yesterday’s Balance
DB003DEGRADED

Database Bank · Episode 3 · replication lag / read consistency

The Replica Reported Yesterday’s Balance

A customer deposits a coin at the primary teller; immediately another teller at the replica window shows the old empty balance; a delayed conveyor belt then delivers the update.

⏱️~0 minWatch & VAR Triage
Deadlock Froze Both Teller Windows
DB004DEGRADED

Database Bank · Episode 4 · deadlock / lock ordering

Deadlock Froze Both Teller Windows

Two tellers each hold one vault key and reach for the other’s key at the same time; both freeze, customers wait, and The DBA points at the crossed lock order.

⏱️~0 minWatch & VAR Triage
The Index Opened a Fast Lane
DB005NORMAL

Database Bank · Episode 5 · database indexing

The Index Opened a Fast Lane

A teller searches a mountain of account folders one by one; The DBA adds a precise index drawer, and the next lookup goes directly to one folder while Cloud Bill stops the overtime clock.

⏱️~0 minWatch & VAR Triage
The Transaction Rolled Back the Duplicate Charge
DB006NORMAL

Database Bank · Episode 6 · rollback / integrity

The Transaction Rolled Back the Duplicate Charge

A payment machine accidentally stamps two charges; The DBA’s transaction control catches the invariant break and visibly retracts the second token before the customer leaves.

⏱️~0 minWatch & VAR Triage

Incident FAQ & Architecture Triage

What technical problem does this parable explain?

A multi-step state change must not expose a partial committed outcome.

What caused the technical incident?

A multi-step state change must not expose a partial committed outcome.

What should a software team do differently in production?

Use atomic transactions where the business invariant requires all-or-nothing change.

Is the video available?

Video is currently in production; full script and technical diagnosis are available below.