Custom Type Alignment

Started by Paul Ramseyover 17 years ago2 messagesgeneral
Jump to latest
#1Paul Ramsey
pramsey@cleverelephant.ca

Simple question on CREATE TYPE (I hope):

When using the "alignment" option, and setting it to "double", what
ends up double aligned? VARDATA()? The whole thing datum (so that the
alignment of VARDATA() is actually conditioned on the size of
VARHDRSZ) ?

Thanks,

Paul

#2Tom Lane
tgl@sss.pgh.pa.us
In reply to: Paul Ramsey (#1)
Re: Custom Type Alignment

"Paul Ramsey" <pramsey@cleverelephant.ca> writes:

Simple question on CREATE TYPE (I hope):
When using the "alignment" option, and setting it to "double", what
ends up double aligned? VARDATA()? The whole thing datum (so that the
alignment of VARDATA() is actually conditioned on the size of
VARHDRSZ) ?

No, the value as a whole. If you're talking about a varlena-format
value then the length word will start on a double boundary, and you'll
have to waste a word of alignment padding if the data payload has to
start on a double boundary.

regards, tom lane