Order First Execute Later
Most systems coordinate while executing transactions, which makes distributed commit expensive. The Calvin approach inverts this. It first uses a sequencing layer to agree on a single global order of all transactions, then ships that ordered log to every replica. Because the order is fixed and execution is deterministic, each replica runs the same transactions in the same order and reaches the same state with no agreement at commit time.
Why Determinism Matters
If execution were nondeterministic, two replicas given the same order could still diverge. Calvin therefore forbids sources of nondeterminism inside transactions, such as reading the wall clock, so the ordered log fully determines the outcome.
What It Buys And Costs
- There is no two phase commit and no blocking on a coordinator crash, because a replica only needs the agreed order to proceed.
- Replication is cheap: ship the input log, not the results, and every replica recomputes.
- The cost is that the full read and write set of a transaction must be known before sequencing, so transactions whose targets depend on prior reads need an extra reconnaissance step.
Key idea
Calvin agrees on a global transaction order up front and executes it deterministically on every replica, removing commit time coordination and blocking.