tuple/">Record commit time of transactions.
At a glance
| Property | Value |
|---|---|
| Parameter | track_commit_timestamp |
| Category | Replication |
| Default | off |
| Value type | boolean (on/off) |
| Change scope | Server restart required (postgresql.conf) |
| Available in | PostgreSQL 12, 13, 14, 15, 16, 17, 18, 19 (added in 12) |
What it does
Record commit time of transactions. This parameter can only be set at server start. The default value is off.
(Description quoted from the official PostgreSQL documentation.)
How to apply a change
Set it in postgresql.conf (or with ALTER SYSTEM) and restart the server — this parameter cannot change without a restart.
Inspect the current value and source with SHOW track_commit_timestamp; or SELECT name, setting, unit, context, source FROM pg_settings WHERE name = 'track_commit_timestamp';.
Tuning guidance
Enable it to record commit times (needed by some conflict-resolution and logical-replication tooling); it adds a small per-commit cost and storage. Leave off unless a feature requires it.