Re: Support for 8-byte TOAST values (aka the TOAST infinite loop problem)

Michael Paquier <michael@paquier.xyz>

From: Michael Paquier <michael@paquier.xyz>
To: Tom Lane <tgl@sss.pgh.pa.us>
Cc: "Burd, Greg" <greg@burd.me>, Nikita Malakhov <hukutoc@gmail.com>, Hannu Krosing <hannuk@google.com>, Postgres hackers <pgsql-hackers@lists.postgresql.org>
Date: 2025-11-26T04:54:03Z
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 data type oid8, 64-bit unsigned identifier

Attachments

On Tue, Sep 30, 2025 at 03:26:14PM +0900, Michael Paquier wrote:
> There were a few conflicts, so here is a rebased v7, moving the patch
> to the next CF.  I have been sitting on this patch for six weeks for
> the moment.

Attached is a rebased v8, fixing a couple of conflicts.

> Tom, you are registered as a reviewer of the patch.  The point of
> contention of the patch, where I see there is no consensus yet, is if
> my approach of using a redirection for the external TOAST pointers
> with a new layer to facilitate the addition of more vartags (aka the
> 64b value vartag proposed here, concept that could also apply to
> compression methods later on) is acceptable.  Moving to a different
> approach, like the "brutal" one I am naming upthread where the
> redirection layer is replaced by changes in all the code paths that
> need to be touched, would be of course cheaper at runtime as there
> would be no more redirection, but the maintenance would be a nightmare
> the more vartags we add, and I have some plans for more of these.
> Doing the switch would be a few hours work, so that would not be a big
> deal, I guess.  The important part is an agreement about the approach,
> IMO.

This point still got no reply.  It would be nice to do something for
this release regarding this old issue, IMO..
--
Michael