core practice · system design prompt
Design exercise: Transaction Processing
ACID, MVCC, isolation anomalies, locking, optimistic control, serializability, commit, and recovery. Implement designOutline() returning non-empty values for: isolationLevel, concurrencyControl, commitRecovery. Each value must name a concrete mechanism or decision.
The mechanism
A transaction provides an illusion over concurrency and failure. Isolation defines which histories are legal; logging and commit protocols decide what survives.
Expected evidence
A design outline with isolationLevel, concurrencyControl, commitRecovery plus an explicit failure mode or trade-off.
Try this drill in the practice workspace →
Hints when you need them
- Name the failure mode before selecting the mechanism.