Two time functions that freeze at different moments.

NOW and clock_timestamp differ by when they freeze

PostgreSQL offers several meanings of “current time.” A transaction timestamp identifies the beginning of a transaction, a statement timestamp identifies a command’s arrival, and a wall-clock reading samples the current clock during evaluation. Choosing among them changes the meaning of audit fields, expiration checks, and observations made during long-running work. ...

January 13, 2028 · 5 min · XB Field Notes
Service activation, accepted time samples, and clock synchronization require distinct observations.

Check timesyncd’s service state and clock evidence separately

systemd-timesyncd is a minimal SNTP client for synchronizing the local system clock against configured time sources. It can help keep certificate checks and wall-clock timestamps meaningful, but it does not provide an unconditional accuracy guarantee. Whether the daemon can run, whether it receives acceptable samples, and whether the system reports synchronization are separate facts to establish. ...

March 11, 2027 · 5 min · XB Field Notes
One instant has several offset representations while a repeated local time has two meanings.

Timestamps need explicit time semantics

A wall-clock label such as 2026-11-01 01:30 does not identify one instant by itself. Its interpretation depends on a timezone and sometimes on which occurrence was intended during a clock transition. Conversely, an explicitly defined Unix timestamp already carries epoch and unit semantics without displaying a zone name. Decide which kind of value your system is storing before choosing a format. ...

November 29, 2026 · 4 min · XB Field Notes
Four timestamps estimate offset and delay, while unequal path delays leave uncertainty.

Clock synchronization bounds time disagreement

Clock synchronization reduces disagreement between machines’ civil-time readings. It supports certificate validity checks, timestamp interpretation, and many expiration policies, but it does not establish a perfect global clock. A host can emit well-formatted UTC while measuring the wrong instant. Applications still need to distinguish elapsed durations, absolute deadlines, and causal ordering rather than making them all depend on raw wall-clock comparisons. ...

September 9, 2026 · 6 min · XB Field Notes
A running unsynchronized client selects a local source without changing the system clock.

Servers need observable time discipline

A time daemon is useful only when its operating state supports the application’s time requirements. A running process can have no usable source, and a selected source can still be wrong or insufficiently measured. Treat time service health as an observable chain: source configuration, successful observations, selection, uncertainty, and permitted clock control. A green process indicator covers only the beginning. ...

September 2, 2026 · 5 min · XB Field Notes