Christophe Pettus: All Your GUCs in a Row: archive_timeout
The archiver only runs when a WAL segment is complete. On a busy database that happens constantly; on a quiet one it might not happen for hours or days. ar…
Opening excerpt (first ~120 words) tap to expand
28 Apr 2026 2 min read Categories: PostgreSQL All Your GUCs in a Row: archive_timeout The archiver only runs when a WAL segment is complete. On a busy database that happens constantly; on a quiet one it might not happen for hours or days. archive_timeout exists to prevent the resulting “our database has been accepting writes all afternoon but none of them are in the archive yet” problem. When set to a positive value, archive_timeout forces a WAL segment switch after that many seconds of elapsed time, provided there has been database activity in the interval. Default is 0 (disabled); context is sighup; units are seconds if unspecified. An idle server does nothing, because forcing rotations on an idle server would produce an endless stream of near-empty archives. The tradeoff is file size.
…
Excerpt limited to ~120 words for fair-use compliance. The full article is at Postgr.