pgsql: Introduce CompactAttribute array in TupleDesc, take 2

2024-12-20 Thread David Rowley
Introduce CompactAttribute array in TupleDesc, take 2 The new compact_attrs array stores a few select fields from FormData_pg_attribute in a more compact way, using only 16 bytes per column instead of the 104 bytes that FormData_pg_attribute uses. Using CompactAttribute allows performance-critica

Re: pgsql: Introduce CompactAttribute array in TupleDesc

2024-12-04 Thread David Rowley
On Tue, 3 Dec 2024 at 17:55, Tom Lane wrote: > Just a gut-level guess, but I'm wondering about something like > uninitialized fields that happen to work as long as the memory > was zero to start with. A run under valgrind might offer insight. Thanks. I've written about the cause of this in [1].

Re: pgsql: Introduce CompactAttribute array in TupleDesc

2024-12-02 Thread Tom Lane
David Rowley writes: > I am looking at the buildfarm. It's fairly apparent that I've broken > something. I'm planning on reverting this shortly. Just a gut-level guess, but I'm wondering about something like uninitialized fields that happen to work as long as the memory was zero to start with. A

Re: pgsql: Introduce CompactAttribute array in TupleDesc

2024-12-02 Thread David Rowley
On Tue, 3 Dec 2024 at 16:52, David Rowley wrote: > > Introduce CompactAttribute array in TupleDesc I am looking at the buildfarm. It's fairly apparent that I've broken something. I'm planning on reverting this shortly. David

pgsql: Introduce CompactAttribute array in TupleDesc

2024-12-02 Thread David Rowley
Introduce CompactAttribute array in TupleDesc The new compact_attrs array stores a few select fields from FormData_pg_attribute in a more compact way, using only 16 bytes per column instead of the 104 bytes that FormData_pg_attribute uses. Using CompactAttribute allows performance-critical operat