Configuration parameter

archive_library — PostgreSQL configuration parameter

Category Write Ahead Log Change scope Sighup

The library to use for archiving completed WAL file segments.

At a glance

Property Value
Parameter archive_library
Category Write Ahead Log
Default (see documentation)
Value type string
Change scope Reload (postgresql.conf, SIGHUP)
Available in PostgreSQL 15, 16, 17, 18, 19 (added in 15)

What it does

The library to use for archiving completed WAL file segments. If set to an empty string (the default), archiving via shell is enabled, and archive_command is used. If both archive_command and archive_library are set, an error will be raised. Otherwise, the specified shared library is used for archiving. The WAL archiver process is restarted by the postmaster when this parameter changes. For more information, see backup_archiving_wal and archive_modules.

This parameter can only be set in the postgresql.conf file or on the server command line.

(Description quoted from the official PostgreSQL documentation.)

How to apply a change

Set it in postgresql.conf (or with ALTER SYSTEM) and reload with SELECT pg_reload_conf(); or pg_ctl reload — no restart needed.

Inspect the current value and source with SHOW archive_library; or SELECT name, setting, unit, context, source FROM pg_settings WHERE name = 'archive_library';.

Tuning guidance

This parameter is rarely a performance lever. Leave it at the default unless you have a specific, documented reason to change it, change it on one session or one role/database first, and confirm the effect with pg_settings and your own measurements before rolling it out cluster-wide.

Reference

PostgreSQL documentation — archive_library.

Keep going

Related & next steps

Concepts on this page

Was this helpful?

← All configuration parameters