pg_resetxlog: add option to set oldest xid & use by pg_upgrade Add pg_resetxlog -u option to set the oldest xid in pg_control. Previously -x set this value be -2 billion less than the -x value. However, this causes the server to immediately scan all relation's relfrozenxid so it can advance pg_control's oldest xid to be inside the autovacuum_freeze_max_age range, which is inefficient and might disrupt diagnostic recovery. pg_upgrade will use this option to better create the new cluster to match the old cluster.
Reported-by: Jason Harvey, Floris Van Nee Discussion: https://postgr.es/m/[email protected], [email protected] Author: Bertrand Drouvot Backpatch-through: 9.6 Branch ------ REL_10_STABLE Details ------- https://git.postgresql.org/pg/commitdiff/71121450e8f42b21665ee9c8f70b701f7a16c801 Modified Files -------------- doc/src/sgml/ref/pg_resetwal.sgml | 19 +++++++++++++++++++ src/bin/pg_resetwal/pg_resetwal.c | 37 +++++++++++++++++++++++-------------- src/bin/pg_upgrade/controldata.c | 17 ++++++++++++++++- src/bin/pg_upgrade/pg_upgrade.c | 7 +++++++ src/bin/pg_upgrade/pg_upgrade.h | 1 + 5 files changed, 66 insertions(+), 15 deletions(-)
