mirror of
https://github.com/postgres/postgres.git
synced 2025-07-03 20:02:46 +03:00
Allow VACUUM to be run with index cleanup disabled.
This commit adds a new reloption, vacuum_index_cleanup, which controls whether index cleanup is performed for a particular relation by default. It also adds a new option to the VACUUM command, INDEX_CLEANUP, which can be used to override the reloption. If neither the reloption nor the VACUUM option is used, the default is true, as before. Masahiko Sawada, reviewed and tested by Nathan Bossart, Alvaro Herrera, Kyotaro Horiguchi, Darafei Praliaskouski, and me. The wording of the documentation is mostly due to me. Discussion: http://postgr.es/m/CAD21AoAt5R3DNUZSjOoXDUY=naYPUOuffVsRzuTYMz29yLzQCA@mail.gmail.com
This commit is contained in:
@ -138,6 +138,15 @@ static relopt_bool boolRelOpts[] =
|
||||
},
|
||||
false
|
||||
},
|
||||
{
|
||||
{
|
||||
"vacuum_index_cleanup",
|
||||
"Enables index vacuuming and index cleanup",
|
||||
RELOPT_KIND_HEAP,
|
||||
ShareUpdateExclusiveLock
|
||||
},
|
||||
true
|
||||
},
|
||||
/* list terminator */
|
||||
{{NULL}}
|
||||
};
|
||||
@ -1388,7 +1397,9 @@ default_reloptions(Datum reloptions, bool validate, relopt_kind kind)
|
||||
{"parallel_workers", RELOPT_TYPE_INT,
|
||||
offsetof(StdRdOptions, parallel_workers)},
|
||||
{"vacuum_cleanup_index_scale_factor", RELOPT_TYPE_REAL,
|
||||
offsetof(StdRdOptions, vacuum_cleanup_index_scale_factor)}
|
||||
offsetof(StdRdOptions, vacuum_cleanup_index_scale_factor)},
|
||||
{"vacuum_index_cleanup", RELOPT_TYPE_BOOL,
|
||||
offsetof(StdRdOptions, vacuum_index_cleanup)}
|
||||
};
|
||||
|
||||
options = parseRelOptions(reloptions, validate, kind, &numoptions);
|
||||
|
Reference in New Issue
Block a user