pg.ddx.io  pgsql-hackers@postgresql.org mailing list archive  
help / color / mirror / Atom feed
From: Justin Pryzby <pryzby@telsasoft.com>
To: Finnerty, Jim <jfinnert@amazon.com>
Cc: Alexander Korotkov <aekorotkov@gmail.com>
Cc: Maxim Orlov <orlovmg@gmail.com>
Cc: pgsql-hackers@postgresql.org
Subject: Re: Add 64-bit XIDs into PostgreSQL 15
Date: Fri, 7 Jan 2022 10:09:21 -0600
Message-ID: <20220107160921.GD14051@telsasoft.com> (raw)
In-Reply-To: <9AFAF000-2E9E-443E-9EC3-7B67D6A03E5B@amazon.com>
References: <CACG=ezZe1NQSCnfHOr78AtAZxJZeCvxrts0ygrxYwe=pyyjVWA@mail.gmail.com>
	<20220104193220.GL15820@tamriel.snowman.net>
	<CB919F14-2B98-4CD3-84C0-91945E9E7EF5@amazon.com>
	<6960BD21-E46F-4682-9A59-17716B346019@amazon.com>
	<CAPpHfdvyu=__Le5wYxCiOQtVWoHgteEAw+zXOLseiBpFdhPdFg@mail.gmail.com>
	<9AFAF000-2E9E-443E-9EC3-7B67D6A03E5B@amazon.com>

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?
I suppose it'd need FREEZE + DISABLE_PAGE_SKIPPING ?

This would preclude upgrading "across" v15.  Maybe that'd be okay, but it'd be
a new and atypical restriction.

How would you enforce that it'd been run on v15 before upgrading to pg16 ?

You'd need to track whether vacuum had completed the necessary steps in pg15.
I don't think it'd be okay to make pg_upgrade --check to read every tuple.

The "keeping track" part is what reminds me of the online checksum patch.
It'd be ideal if there were a generic solution to this kind of task, or at
least a "model" process to follow.

-- 
Justin





view thread (232+ messages)  latest in thread

Message-ID: <20220107160921.GD14051@telsasoft.com>
Permalink:  ../20220107160921.GD14051@telsasoft.com/
Also on:    postgresql.org/message-id/20220107160921.GD14051@telsasoft.com

 · 

reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: pgsql-hackers@postgresql.org
  Cc: pryzby@telsasoft.com, jfinnert@amazon.com, aekorotkov@gmail.com, orlovmg@gmail.com
  Subject: Re: Add 64-bit XIDs into PostgreSQL 15
  In-Reply-To: <20220107160921.GD14051@telsasoft.com>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox