On Sat, Oct 21, 2023 at 09:59:04PM -0400, Bruce Momjian wrote: > On Sat, Oct 21, 2023 at 09:56:13PM -0400, Bruce Momjian wrote: > > I did some more research. It turns out that the source slot/planSlot is > > populating its pg_attribute information via makeTargetEntry() and it > > has no concept of a storage type. > > > > Digging further, I found that we cannot get rid of the the use of > > att->attstorage != TYPSTORAGE_PLAIN in macros ATT_IS_PACKABLE and > > VARLENA_ATT_IS_PACKABLE macros in src/backend/access/common/heaptuple.c > > because there are internal uses of fill_val() that can't handle packed > > varlena headers. > > > > I ended up with a doc patch that adds a C comment about this odd > > behavior and removes doc text about PLAIN storage not using packed > > headers. > > Oops, patch attached.
Patch applied to all supported versions. -- Bruce Momjian <br...@momjian.us> https://momjian.us EDB https://enterprisedb.com Only you can decide what is important to you.