diff options
author | Peter Geoghegan <pg@bowt.ie> | 2021-03-11 12:42:46 -0800 |
---|---|---|
committer | Peter Geoghegan <pg@bowt.ie> | 2021-03-11 12:42:46 -0800 |
commit | effdd3f3b633e88feaa675377075f02ecc99aee4 (patch) | |
tree | a55690b855700ef0f3276dda0e56c08eb58b396d /src | |
parent | 32fd2b57d7f64948e649fc205c43f007762ecaac (diff) | |
download | postgresql-effdd3f3b633e88feaa675377075f02ecc99aee4.tar.gz postgresql-effdd3f3b633e88feaa675377075f02ecc99aee4.zip |
Add back vacuum_cleanup_index_scale_factor parameter.
Commit 9f3665fb removed the vacuum_cleanup_index_scale_factor storage
parameter. However, that creates dump/reload hazards when moving across
major versions.
Add back the vacuum_cleanup_index_scale_factor parameter (though not the
GUC of the same name) purely to avoid problems when using tools like
pg_upgrade. The parameter remains disabled and undocumented.
No backpatch to Postgres 13, since vacuum_cleanup_index_scale_factor was
only disabled by REL_13_STABLE's version of master branch commit
9f3665fb in the first place -- the parameter already looks like this on
REL_13_STABLE.
Discussion: https://postgr.es/m/YEm/a3Ko3nKnBuVq@paquier.xyz
Diffstat (limited to 'src')
-rw-r--r-- | src/backend/access/common/reloptions.c | 9 | ||||
-rw-r--r-- | src/backend/access/nbtree/nbtutils.c | 2 | ||||
-rw-r--r-- | src/include/access/nbtree.h | 1 |
3 files changed, 12 insertions, 0 deletions
diff --git a/src/backend/access/common/reloptions.c b/src/backend/access/common/reloptions.c index 433e2367223..d897bbec2ba 100644 --- a/src/backend/access/common/reloptions.c +++ b/src/backend/access/common/reloptions.c @@ -461,6 +461,15 @@ static relopt_real realRelOpts[] = }, 0, -1.0, DBL_MAX }, + { + { + "vacuum_cleanup_index_scale_factor", + "Deprecated B-Tree parameter.", + RELOPT_KIND_BTREE, + ShareUpdateExclusiveLock + }, + -1, 0.0, 1e10 + }, /* list terminator */ {{NULL}} }; diff --git a/src/backend/access/nbtree/nbtutils.c b/src/backend/access/nbtree/nbtutils.c index fdbe0da4720..d5243107239 100644 --- a/src/backend/access/nbtree/nbtutils.c +++ b/src/backend/access/nbtree/nbtutils.c @@ -2105,6 +2105,8 @@ btoptions(Datum reloptions, bool validate) { static const relopt_parse_elt tab[] = { {"fillfactor", RELOPT_TYPE_INT, offsetof(BTOptions, fillfactor)}, + {"vacuum_cleanup_index_scale_factor", RELOPT_TYPE_REAL, + offsetof(BTOptions, vacuum_cleanup_index_scale_factor)}, {"deduplicate_items", RELOPT_TYPE_BOOL, offsetof(BTOptions, deduplicate_items)} diff --git a/src/include/access/nbtree.h b/src/include/access/nbtree.h index 5c66d1f366e..eb284b60427 100644 --- a/src/include/access/nbtree.h +++ b/src/include/access/nbtree.h @@ -1067,6 +1067,7 @@ typedef struct BTOptions { int32 varlena_header_; /* varlena header (do not touch directly!) */ int fillfactor; /* page fill factor in percent (0..100) */ + float8 vacuum_cleanup_index_scale_factor; /* deprecated */ bool deduplicate_items; /* Try to deduplicate items? */ } BTOptions; |