Re: Variable-length FunctionCallInfoData - Mailing list pgsql-hackers

From Andres Freund
Subject Re: Variable-length FunctionCallInfoData
Date
Msg-id 20190127071315.n5z6efwd5ybyrol6@alap3.anarazel.de
Whole thread Raw
In response to Re: Variable-length FunctionCallInfoData  (Greg Stark <stark@mit.edu>)
List pgsql-hackers
Hi,

On 2019-01-27 08:03:17 +0100, Greg Stark wrote:
> I assume you already considered and rejected having a fixed size null
> bitmap followed by a variable size array of datums. That seems like it
> would be denser and work better with cpu cache.

It'd be more expensive to access individually (offset calculation +
masks, ~5 insn, not fully pipelineable), it'd not guarantee that the
null bit and datum are on the same cacheline, you could not pass the
null-bit to various functions accepting a bool*, you could not pass the
new equivalent NullableDatums to other functions (like both the past and
current solution allow).

Greetings,

Andres Freund


pgsql-hackers by date:

Previous
From: Greg Stark
Date:
Subject: Re: Variable-length FunctionCallInfoData
Next
From: Noah Misch
Date:
Subject: Re: pgsql: Remove references to Majordomo