Why Clocks Break Distributed Systems

Why Clocks Break Distributed Systems

This newsletter explains why physical clocks can misorder distributed events, how Lamport and vector clocks handle causality and concurrency, and how ordering guarantees shape consistency choices.
8 mins read
Sep 29, 2026
Share

An event can happen later and still receive an earlier timestamp.

Consider two related operations handled by different nodes. Node A records a profile update at 10:00:00.120. The update then leads to an account deletion on Node B, whose clock is slightly behind and records it at 10:00:00.115. The deletion happened later, but sorting by timestamp places it first.

Clock skew does not change the actual execution order. The problem appears when a system treats physical timestamps as authoritative. Conflict resolution, last-write-wins policies, or audit pipelines can then assign the wrong precedence to valid events.

Physical timestamp order, real-time order, and causal order can differ in a distributed system. Reliable event ordering requires an ordering mechanism that provides the guarantee the system needs.

This newsletter examines:

  • Why Network Time Protocol (NTP) reduces drift without eliminating ordering uncertainty.

  • How Lamport clocks preserve causal precedence.

  • How vector clocks expose concurrent updates.

  • How ordering choices shape consistency guarantees.

  • How bad ordering corrupts data and audit trails.

A natural first response to clock skew is to synchronize the clocks more closely. NTP does exactly that, but synchronization reduces uncertainty rather than removing it.

NTP reduces drift but leaves uncertainty#

NTP periodically estimates a machine’s offset from time servers and adjusts its local clock. This keeps clocks reasonably aligned, but it does not make them identical.

Several sources of uncertainty remain. Hardware oscillators drift at different rates, synchronization happens periodically, and network delays vary. Asymmetric network paths can also distort offset estimates when a request and its response experience different transit times.

The result is residual uncertainty in the clocks. Two nodes can record nearby events with timestamps that do not reflect their real-time or causal order. NTP does not give application logic a universal hard bound that makes timestamp comparison safe for correctness-sensitive ordering.


Written By:
Fahim ul Haq
Streaming intelligence enables instant, model-driven decisions
Learn how to build responsive AI systems by combining real-time data pipelines with low-latency model inference, ensuring instant decisions, consistent features, and reliable intelligence at scale.
13 mins read
Jan 21, 2026