Re: Add 64-bit XIDs into PostgreSQL 15
Bruce Momjian <bruce@momjian.us>
From: Bruce Momjian <bruce@momjian.us>
To: Robert Haas <robertmhaas@gmail.com>
Cc: Maxim Orlov <orlovmg@gmail.com>, Heikki Linnakangas <hlinnaka@iki.fi>, Andres Freund <andres@anarazel.de>, Yura Sokolov <y.sokolov@postgrespro.ru>, Evgeny Voropaev <evgeny.voropaev@tantorlabs.com>, PostgreSQL Hackers <pgsql-hackers@postgresql.org>, Andrey Borodin <x4mmm@yandex-team.ru>
Date: 2026-02-13T02:35:56Z
Lists: pgsql-hackers
On Tue, Feb 10, 2026 at 09:54:30AM -0500, Robert Haas wrote: > On Tue, Feb 10, 2026 at 1:19 AM Maxim Orlov <orlovmg@gmail.com> wrote: > > The aim of this patch is to make Postgres support 64-bit XIDs. > > This is why the TransactionID type size increases from 4 to 8 bytes. > > It also has an effect on the proc array, allowing two transactions that > > that are more than 2 billion XIDs apart to run at the same time. > > Well, what three committers are telling you is that this approach has > zero chance of being accepted. > > Now, of course, none of us have any control over what you or anyone > else chooses to submit. It's perfectly possible to keep submitting > this patch set with this design choice. But I do not think anyone will > ever commit it, and if by chance someone did, there would be an > immediate outcry and it would certainly end up getting reverted. This > is kind of what I meant in my earlier message when I said this: I think we need to go even farther backward in the discussion --- are we designing a system for a pure API, or one which considers tradeoffs between design and code changes? Are we designing for the general use-case or high volume installs? You get different outcomes if people make different decisions on the above issues. -- Bruce Momjian <bruce@momjian.us> https://momjian.us EDB https://enterprisedb.com Do not let urgent matters crowd out time for investment in the future.
Commits
Same data as JSON:
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
Add SLRU tests for 64-bit page case
- a60b8a58f435 17.0 landed
-
Make use FullTransactionId in 2PC filenames
- 5a1dfde8334b 17.0 landed
-
Use larger segment file names for pg_notify
- 2cdf131c46e6 17.0 landed
-
Index SLRUs by 64-bit integers rather than by 32-bit integers
- 4ed8f0913bfd 17.0 landed