rihad <ri...@mail.ru> writes:
> If an autovacuum job on a huge table runs for 5-6 hours, do its freed 
> pages/tuples become available for reuse immediately when they are marked 
> as free, or only at the end of the multi-hour vacuum operation?

They'll be freed in batches, where the size of a batch depends on the
autovacuum_work_mem or maintenance_work_mem setting.  The basic
work cycle is

* scan table to find dead tuples, save their TIDs in working memory;
  continue until end of table or working memory full
* scan indexes to find index entries matching those TIDs, remove 'em
* go back to table and remove the previously-found tuples
* if not end of table, repeat

So a larger work-mem setting means fewer passes over the indexes,
but a longer time until space is reclaimed.

                        regards, tom lane


Reply via email to