Hi! Michael, I'm looking into your patch set for Sequence AMs. I'm not very happy with single global OID counter for TOAST tables, so I've decided to investigate your work on sequences and try to adapt it to TOAST tables. Would report my progress.
Some time ago I've proposed individual TOAST counter to get rid of table lookups for unused ID, but later decided that neither reloptions nor pg_class are not a good place to store it due to lots of related catalog updates including locks, so sequences look much more useful for this, as you wrote above. Personally I'm not too happy with toast_external_infos[TOAST_EXTERNAL_INFO_SIZE] array and for me it seems that lookups using VARTAG should be straightened out with more error-proof, currently using wrong vartags would result in core dumps. On Sat, Aug 9, 2025 at 10:40 AM Michael Paquier <mich...@paquier.xyz> wrote: > > For the 4-byte vs 8-byte value case, I was wondering if we should be > simpler and less optimistic and assume that we are only going to use > the wider one depending on the type of chunk_id in the TOAST table, as > a minimum threshold when checking if a tuple should be toasted or not. > Perhaps my vision of things is too simple, but I cannot think about a > good reason that would justify making this code more complicated than > it already is. > -- > Michael > -- Regards, Nikita Malakhov Postgres Professional The Russian Postgres Company https://postgrespro.ru/