Andres Freund <[email protected]> writes:
> Thanks for the patch.  Looks like a decent improvement.

Thanks for looking!

> On 2026-01-28 20:20:24 -0500, Tom Lane wrote:
>> ... It might be worth
>> worrying about the increased cost of att_align_nominal(),
>> but that macro is not that heavily used IMO.

> Perhaps we should make att_align_nominal() first determine the numerical
> alignment value and then have it use TYPEALIGN()? I think that'd be more
> likely to be pulled out of loops by the compile.

Yeah, I was thinking about actually breaking that into two source-code
steps, a function to map TYPALIGN_xxx to numeric alignment and then a
replacement for att_align_nominal that takes a numeric alignment.
If you think it's worth worrying about I'm happy to do that.

> Perhaps it's time to reformat att_align_nominal() into an static inline? It's
> pretty hard to read.

+1, I was not revisiting any of that for this draft, but if we're going
to refactor it then an inline function seems good.

> I don't love the 'l' for TYPALIGN_INT64, but I guess I don't really have a
> better suggestion.

Of course I was thinking 'l' for "long", but I agree it's not great
typographically.  One idea is 'L' not 'l', but that gives up
consistency for visual separation.  Any other ideas out there?

> It wouldn't hurt to have a short SQL level test for creating a type with int8
> & max alignments.

hmm ... yeah, I guess those code paths might not be covered already.

                        regards, tom lane


Reply via email to