public inbox for [email protected]
help / color / mirror / Atom feedFrom: Justin Pryzby <[email protected]>
To: Bruce Momjian <[email protected]>
Cc: Finnerty, Jim <[email protected]>
Cc: Stephen Frost <[email protected]>
Cc: Maxim Orlov <[email protected]>
Cc: [email protected]
Subject: Re: Add 64-bit XIDs into PostgreSQL 15
Date: Wed, 5 Jan 2022 18:12:26 -0600
Message-ID: <[email protected]> (raw)
In-Reply-To: <[email protected]>
References: <CACG=ezZe1NQSCnfHOr78AtAZxJZeCvxrts0ygrxYwe=pyyjVWA@mail.gmail.com>
<[email protected]>
<[email protected]>
<[email protected]>
On Wed, Jan 05, 2022 at 06:51:37PM -0500, Bruce Momjian wrote:
> On Tue, Jan 4, 2022 at 10:22:50PM +0000, Finnerty, Jim wrote:
> > I'm concerned about the maintainability impact of having 2 new
> > on-disk page formats. It's already complex enough with XIDs and
> > multixact-XIDs.
> >
> > If the lack of space for the two epochs in the special data area is
> > a problem only in an upgrade scenario, why not resolve the problem
> > before completing the upgrade process like a kind of post-process
> > pg_repack operation that converts all "double xmax" pages to
> > the "double-epoch" page format? i.e. maybe the "double xmax"
> > representation is needed as an intermediate representation during
> > upgrade, but after upgrade completes successfully there are no pages
> > with the "double-xmax" representation. This would eliminate a whole
> > class of coding errors and would make the code dealing with 64-bit
> > XIDs simpler and more maintainable.
>
> Well, yes, we could do this, and it would avoid the complexity of having
> to support two XID representations, but we would need to accept that
> fast pg_upgrade would be impossible in such cases, since every page
> would need to be checked and potentially updated.
>
> You might try to do this while the server is first started and running
> queries, but I think we found out from the online checkpoint patch that
I think you meant the online checksum patch. Which this reminded me of, too.
https://commitfest.postgresql.org/31/2611/
> having the server in an intermediate state while running queries is very
> complex --- it might be simpler to just accept two XID formats all the
> time than enabling the server to run with two formats for a short
> period. My big point is that this needs more thought.
--
Justin
view thread (2+ messages)
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: [email protected]
Cc: [email protected], [email protected], [email protected], [email protected], [email protected]
Subject: Re: Add 64-bit XIDs into PostgreSQL 15
In-Reply-To: <[email protected]>
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
This inbox is served by agora; see mirroring instructions
for how to clone and mirror all data and code used for this inbox