Thread: pgsql: Avoid assuming that struct varattrib_pointer doesn't get padded

pgsql: Avoid assuming that struct varattrib_pointer doesn't get padded

From
tgl@postgresql.org (Tom Lane)
Date:
Log Message:
-----------
Avoid assuming that struct varattrib_pointer doesn't get padded by the
compiler --- at least on ARM, it does.  I suspect that the varvarlena patch
has been creating larger-than-intended toast pointers all along on ARM,
but it wasn't exposed until the latest tweak added some Asserts that
calculated the expected size in a different way.  We could probably have
fixed this by adding __attribute__((packed)) as is done for ItemPointerData,
but struct varattrib_pointer isn't really all that useful anyway, so it
seems cleanest to just get rid of it and have only struct varattrib_1b_e.
Per results from buildfarm member quagga.

Modified Files:
--------------
    pgsql/src/backend/access/heap:
        tuptoaster.c (r1.76 -> r1.77)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/access/heap/tuptoaster.c?r1=1.76&r2=1.77)
    pgsql/src/include:
        postgres.h (r1.84 -> r1.85)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/postgres.h?r1=1.84&r2=1.85)