Re: New vacuum option to do only freezing
Masahiko Sawada <sawada.mshk@gmail.com>
From: Masahiko Sawada <sawada.mshk@gmail.com>
To: Robert Haas <robertmhaas@gmail.com>
Cc: PostgreSQL-development <pgsql-hackers@postgresql.org>
Date: 2018-11-05T08:08:24Z
Lists: pgsql-hackers
On Fri, Nov 2, 2018 at 2:02 AM Robert Haas <robertmhaas@gmail.com> wrote: > > On Mon, Oct 1, 2018 at 6:23 AM Masahiko Sawada <sawada.mshk@gmail.com> wrote: > > Attached patch adds a new option FREEZE_ONLY to VACUUM command. This > > option is same as FREEZE option except for it disables reclaiming dead > > tuples. That is, with this option vacuum does pruning HOT chain, > > freezing live tuples and maintaining both visibility map and freespace > > map but does not collect dead tuples and invoke neither heap vacuum > > nor index vacuum. This option will be useful if user wants to prevent > > XID wraparound a table as quick as possible, especially when table is > > quite large and is about to XID wraparound. I think this usecase was > > mentioned in some threads but I couldn't find them. > Thank you for the comment! > The feature seems like a reasonable one, but the name doesn't seem > like a good choice. It doesn't only freeze - e.g. it HOT-prunes, as > it must. Maybe consider something like (without_index_cleanup true) > or (index_cleanup false). Adding a field-and-value style option might be worth. Or maybe we can add one option for example freeze_without_index_cleanup? Regards, -- Masahiko Sawada NIPPON TELEGRAPH AND TELEPHONE CORPORATION NTT Open Source Software Center
Commits
-
Add toast-level reloption for vacuum_index_cleanup
- ce59b75d449d 12.0 landed
-
heap_prepare_freeze_tuple: Simplify coding
- 2bf372a4ae26 12.0 landed
-
Fix missing word.
- 6665305e17ed 12.0 landed
-
Allow VACUUM to be run with index cleanup disabled.
- a96c41feec6b 12.0 landed
-
Don't mark pages all-visible spuriously
- d2599ecfcc74 11.0 cited