Search Postgresql Archives

Re: Recommendation to run vacuum FULL in parallel

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 04/03/2019 06:40 PM, Michael Lewis wrote:
"Sometimes a table's usage pattern involves much more updates than
inserts, which gradually uses more and more unused space that is never
used again by postgres, and plain autovacuuming doesn't return it to the
OS."

Can you expound on that? I thought that was exactly what autovacuum did for old versions of rows whether dead because of delete or update, so I am surprised by this statement. I thought vacuum full was only ever needed if storage space is an issue and the table is not expect to quickly re-expand to current size on disk from new churn of tuples.


From what I understand from the docs updates keep older versions of rows intact because other transactions might still use them (this is the essence of MVCC), and autovacuuming (plain VACUUM) marks that space as available when it is run, so future inserts can reuse it. In case the number of updates is much greater than the number of inserts, the unused zombie space gradually creeps up.






[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]

  Powered by Linux