One schedule · four levels · four different answers
🗄️ Isolation Levels & MVCC
Run the same interleaving of two transactions at different isolation levels and watch the answer change — with the version chain of the row drawn underneath, because every anomaly here reduces to one question: which version is this transaction allowed to see? Four models cover the dirty read, the non-repeatable read and its phantom cousin, the write skew that survives REPEATABLE READ and leaves no trace at all, and the race on a balance written four ways — one wrong and three right for different reasons. Each step lights up the matching line of SQL and TypeScript.
Space = run/pause · ← → = step
1/1
Speed

