Re: Add 64-bit XIDs into PostgreSQL 15

Maxim Orlov <orlovmg@gmail.com>

From: Maxim Orlov <orlovmg@gmail.com>
To: Thom Brown <thom@linux.com>
Cc: Zhang Mingli <zmlpostgres@gmail.com>, Michael Paquier <michael@paquier.xyz>, Justin Pryzby <pryzby@telsasoft.com>, Dilip Kumar <dilipbalaut@gmail.com>, Pavel Borisov <pashkin.elfe@gmail.com>, Aleksander Alekseev <aleksander@timescale.com>, pgsql-hackers@lists.postgresql.org, Stephen Frost <sfrost@snowman.net>, Alexander Korotkov <aekorotkov@gmail.com>, Andres Freund <andres@anarazel.de>, Ilya Anfimov <ilan@tzirechnoy.com>
Date: 2022-11-14T13:56:07Z
Lists: pgsql-hackers

Commits

Same data as JSON: GET /api/v1/messages/:b64id/commits the thread's linked commits as JSON, with link sources. API reference →
  1. Add SLRU tests for 64-bit page case

  2. Make use FullTransactionId in 2PC filenames

  3. Use larger segment file names for pg_notify

  4. Index SLRUs by 64-bit integers rather than by 32-bit integers

Attachments

>
>
> 0008 needs a rebase.  heapam.h and catversion.h are failing.
>
> Regards
>
> Thom
>

Thanks, done!

Also add copying of the xmin and xmax while page is locked. In heapgetpage
we have to copy tuples xmin and xmax while
we're holding a lock. Since we do not hold a lock after that, values of
xmin or xmax may be changed, and we may get
incorrect values of those fields. This affects only the scenario when the
user select xmin or xmax "directly" by SQL query, AFAICS.

-- 
Best regards,
Maxim Orlov.