#01 1. Mapping Consistency Models: From Causal to External Linearizability
In a database deployed across continents, time is the least trustworthy physical quantity there is. Relativistic effects, crystal-oscillator drift and network jitter can leave the local physical clocks (NTP) on different machines hundreds of milliseconds apart.
If transaction T2 starts in the physical world only after transaction T1 has committed, the system must guarantee that every observer sees T1 happen before T2. This property is called external consistency (strict serializability).
#02 2. The Math of Google TrueTime: Commit Wait Over the TT.now() Uncertainty Interval
Google Spanner's TrueTime API returns an interval [t<i>earliest</i>, t<i>latest</i>], where:
When a transaction is ready to commit it picks s = TT.now().latest as its commit timestamp. It is not allowed to report success to the client until TT.now().earliest > s holds. That deliberate pause, the commit wait, guarantees that any transaction starting later is handed a timestamp strictly greater than s.