Tom Lane wrote:
> A relevant technique that's been used in a lot of our code is to define
> an intermediate macro, along the lines of
>
> #define SizeofHeapTupleHeader offsetof(HeapTupleHeaderData, t_bits)
>
> or maybe it would better be called HeapTupleHeaderFixedSize or
> HeapTupleHeaderOverhead. Not sure what reads most nicely.
Maybe the macro could take an argument which is the size of the data
part, so that it could be allocated together with the Overhead part; the
addition would be done in the macro rather than its caller.
--
Álvaro Herrera http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services