Configuration parameter

autovacuum_vacuum_cost_delay — PostgreSQL Configuration Parameter

Category Autovacuum Default 2ms Unit time (ms/s/min) Change scope Reload (no restart)

Throttling pause for autovacuum I/O.

At a glance

Property Value
Parameter autovacuum_vacuum_cost_delay
Category Autovacuum
Default 2ms
Value type time (ms/s/min)
Change scope Reload (no restart)

What it does

The sleep autovacuum takes after accumulating autovacuum_vacuum_cost_limit cost, throttling its I/O impact. Default lowered to 2ms in PG12.

How to apply a change

Takes effect on configuration reload (sighup context). Run SELECT pg_reload_conf(); or send SIGHUP — no restart needed.

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

Tuning guidance

Lower to 0-1ms (or raise the cost limit) to let autovacuum keep up on fast storage; the conservative default can let busy tables outrun the cleaner.

Reference

PostgreSQL documentation — Autovacuum configuration.

Was this helpful?

← All configuration parameters