On Fri, 7 Jan 2022 at 16:09, Justin Pryzby <pry...@telsasoft.com> wrote: > > On Fri, Jan 07, 2022 at 03:53:51PM +0000, Finnerty, Jim wrote: > > I'd still like a plan to retire the "double xmax" representation > > eventually. Previously I suggested that this could be done as a > > post-process, before upgrade is complete, but that could potentially make > > upgrade very slow. > > > > Another way to retire the "double xmax" representation eventually could be > > to disallow "double xmax" pages in subsequent major version upgrades (e.g. > > to PG16, if "double xmax" pages are introduced in PG15). This gives the > > luxury of time after a fast upgrade to convert all pages to contain the > > epochs, while still providing a path to more maintainable code in the > > future. > > Yes, but how are you planning to rewrite it? Is vacuum enough?
Probably not, but VACUUM is the place to add such code. > I suppose it'd need FREEZE + DISABLE_PAGE_SKIPPING ? Yes > This would preclude upgrading "across" v15. Maybe that'd be okay, but it'd be > a new and atypical restriction. I don't see that restriction. Anyone upgrading from before PG15 would apply the transform. Just because we introduce a transform in PG15 doesn't mean we can't apply that transform in later releases as well, to allow say PG14 -> PG16. -- Simon Riggs http://www.EnterpriseDB.com/