diff options
author | Michael Paquier <michael@paquier.xyz> | 2021-02-09 14:13:57 +0900 |
---|---|---|
committer | Michael Paquier <michael@paquier.xyz> | 2021-02-09 14:13:57 +0900 |
commit | 7cb3048f38e26b39dd5fd412ed8a4981b6809b35 (patch) | |
tree | f7ffbf1180744895084e82223ac9f9d6e20988e2 /src/include | |
parent | 5fd590021d268190e4c8f377370c7e7f1e7d9229 (diff) |
Add option PROCESS_TOAST to VACUUM
This option controls if toast tables associated with a relation are
vacuumed or not when running a manual VACUUM. It was already possible
to trigger a manual VACUUM on a toast relation without processing its
main relation, but a manual vacuum on a main relation always forced a
vacuum on its toast table. This is useful in scenarios where the level
of bloat or transaction age of the main and toast relations differs a
lot.
This option is an extension of the existing VACOPT_SKIPTOAST that was
used by autovacuum to control if toast relations should be skipped or
not. This internal flag is renamed to VACOPT_PROCESS_TOAST for
consistency with the new option.
A new option switch, called --no-process-toast, is added to vacuumdb.
Author: Nathan Bossart
Reviewed-by: Kirk Jamison, Michael Paquier, Justin Pryzby
Discussion: https://postgr.es/m/BA8951E9-1524-48C5-94AF-73B1F0D7857F@amazon.com
Diffstat (limited to 'src/include')
-rw-r--r-- | src/include/commands/vacuum.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/include/commands/vacuum.h b/src/include/commands/vacuum.h index 191cbbd0049..d029da5ac05 100644 --- a/src/include/commands/vacuum.h +++ b/src/include/commands/vacuum.h @@ -181,7 +181,7 @@ typedef struct VacAttrStats #define VACOPT_FREEZE 0x08 /* FREEZE option */ #define VACOPT_FULL 0x10 /* FULL (non-concurrent) vacuum */ #define VACOPT_SKIP_LOCKED 0x20 /* skip if cannot get lock */ -#define VACOPT_SKIPTOAST 0x40 /* don't process the TOAST table, if any */ +#define VACOPT_PROCESS_TOAST 0x40 /* process the TOAST table, if any */ #define VACOPT_DISABLE_PAGE_SKIPPING 0x80 /* don't skip any pages */ /* |