From: Tom Lane <tgl@sss.pgh.pa.us>
To: Andres Freund <andres@anarazel.de>
Cc: Laurenz Albe <laurenz.albe@cybertec.at>
Cc: suchithjn22@gmail.com
Cc: pgsql-docs@lists.postgresql.org
Subject: Re: The documentation for storage type 'plain' actually allows single byte header
Date: Sun, 15 Jan 2023 18:41:22 -0500
Message-ID: <1750674.1673826082@sss.pgh.pa.us> (raw)
In-Reply-To: <20230115231950.hvlzxho6pccmrn6g@awork3.anarazel.de>
References: <167336599095.2667301.15497893107226841625@wrigleys.postgresql.org>
<d99b3e0beebdde0741d28035aaea7f4af56fa050.camel@cybertec.at>
<1698750.1673818827@sss.pgh.pa.us>
<20230115230320.d3mtlzek6dv7mgxx@awork3.anarazel.de>
<1747092.1673824101@sss.pgh.pa.us>
<20230115231950.hvlzxho6pccmrn6g@awork3.anarazel.de>
Andres Freund <andres@anarazel.de> writes:
> On 2023-01-15 18:08:21 -0500, Tom Lane wrote:
>> ri_newTupleSlot has the tupdesc we want, planSlot is a virtual slot
>> that has the bogus tupdesc, and for some reason heap_form_tuple is
>> getting called with planSlot's tupdesc not ri_newTupleSlot's.
> The way we copy a slot into a heap slot is to materialize the source slot and
> copy the heap tuple into target slot. Which is also what happened before the
> slot type abstraction (hence the problem also existing before that was
> introduced).
Hmm. For the case of virtual->physical slot, that doesn't sound
terribly efficient.
> I think it's fairly fundamental that copying between two slots assumes a
> compatible tupdescs.
We could possibly make some effort to inject the desired attstorage
properties into the planSlot's tupdesc. Not sure where would be a
good place.
regards, tom lane
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Reply to all the recipients using the --to and --cc options:
reply via email
To: pgsql-docs@postgresql.org
Cc: tgl@sss.pgh.pa.us, andres@anarazel.de, laurenz.albe@cybertec.at, suchithjn22@gmail.com, pgsql-docs@lists.postgresql.org
Subject: Re: The documentation for storage type 'plain' actually allows single byte header
In-Reply-To: <1750674.1673826082@sss.pgh.pa.us>
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox