On Mon, 2021-09-20 at 08:07 +0000, nikolai.berkoff wrote: > I can see in > src/backend/access/heap/vacuumlazy.c > that compute_max_dead_tuples uses autovacuum_work_mem when it is given. > > The "vacuuming indexes" documentation has: > > > "If a table has any indexes, this will happen at least once per vacuum, > > after the heap has been completely scanned. It may happen multiple times per > > vacuum if maintenance_work_mem is insufficient to store the number of dead > > tuples found."
Your suggested change is: > "If a table has any indexes, this will happen at least once per vacuum, > after the heap has been completely scanned. It may happen multiple times per > vacuum if the memory is insufficient to store the number of dead > tuples found. The memory is set via the maintenance_work_mem unless > it is an autovacuum then autovacuum_work_mem will be used." Why not keep it simple with "If a table has any indexes, this will happen at least once per vacuum, after the heap has been completely scanned. It may happen multiple times per vacuum if maintenance_work_mem (or, in the case of autovacuum, autovacuum_work_mem) is insufficient to store the number of dead tuples found." Yours, Laurenz Albe -- Cybertec | https://www.cybertec-postgresql.com