Raghavendra
Raghavendra

Reputation: 619

Need clarification related to Autovacuum configuration parameters

What is the difference between "autovacuum_naptime" and "autovacuum_vacuum_cost_delay"?

What is the difference between "autovacuum launcher process" and "autovacuum worker process"?

How to control the number of "autovacuum launcher process" and "autovacuum worker process"?

Does "autovacuum launcher process" sleeps? If yes,which parameter controls it?

Does "autovacuum worker process" sleeps? If yes,which parameter controls it?

How to monitor these parameters related process in Linux machine?

Upvotes: 2

Views: 193

Answers (1)

Laurenz Albe
Laurenz Albe

Reputation: 246598

There is always one autovacuum launcher process that keeps looking for tables that need grooming, and this process starts up to autovacuum_max_workers workers that each vacuum one table.

The autovacuum launcher is not always active; it sleeps for autovacuum_naptime between checks.

The autovacuum workers do not run full throttle themselves; they take breaks of autovacuum_vacuum_cost_delay when they have done a certain amount of work.

You can use autovacuum_log_min_duration to log autovacuum activity for monitoring. In PostgreSQL v10 you can also see the workers in pg_stat_activity.

Upvotes: 2

Related Questions