Re: Support for 8-byte TOAST values (aka the TOAST infinite loop problem)
Nikita Malakhov <hukutoc@gmail.com>
From: Nikita Malakhov <hukutoc@gmail.com>
To: Hannu Krosing <hannuk@google.com>
Cc: Michael Paquier <michael@paquier.xyz>, Postgres hackers <pgsql-hackers@lists.postgresql.org>
Date: 2025-07-04T11:38:34Z
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 →
-
Add data type oid8, 64-bit unsigned identifier
- b139bd3b6ef0 19 (unreleased) landed
Hi! Hannu, we'd already made an attempt to extract the TOAST functionality as API and make it extensible and usable by other AMs in [1], the patch set was met calmly but we still have some hopes on it. Michael, glad you continue this work! Took patch set for review. [1] Pluggable TOAST <https://www.postgresql.org/message-id/flat/224711f9-83b7-a307-b17f-4457ab73aa0a%40sigaev.ru> -- Regards, Nikita Malakhov Postgres Professional The Russian Postgres Company https://postgrespro.ru/ On Fri, Jul 4, 2025 at 2:03 PM Hannu Krosing <hannuk@google.com> wrote: > Hi Michael > > I'll take a look at the patch set. > > While digging around in the TOAST code did you have any ideas on how > one could extract the TOAST APIs in a way that they can be added in > Table Access Method definition ? > > Not all TAMs need TOAST, but the ones that do could also be the ones > that still like to do something different when materializing toasted > values. > > And TOAST is actually a nice abstraction which could be used as basis > for both offloading more columns into separate forks and files as well > as implementing some kinds of vectored, columnar and compressed > storages. > > ---- > Hannu >