Re: BRIN page type identifier
От | Tom Lane |
---|---|
Тема | Re: BRIN page type identifier |
Дата | |
Msg-id | 8620.1425944081@sss.pgh.pa.us обсуждение исходный текст |
Ответ на | Re: BRIN page type identifier (Alvaro Herrera <alvherre@2ndquadrant.com>) |
Ответы |
Re: BRIN page type identifier
Re: BRIN page type identifier |
Список | pgsql-hackers |
Alvaro Herrera <alvherre@2ndquadrant.com> writes: > I wonder if this is permissible and whether it will do the right thing > on 32-bit systems: > /* > * Special area of BRIN pages. > * > * We add some padding bytes to ensure that 'type' ends up in the last two > * bytes of the page, for consumption by pg_filedump and similar utilities. > * (Special space is MAXALIGN'ed). > */ > typedef struct BrinSpecialSpace > { > char padding[MAXALIGN(1) - 2 * sizeof(uint16)]; > uint16 flags; > uint16 type; > } BrinSpecialSpace; I should expect that to fail altogether on 32-bit machines, because the declared array size will be zero. You could try something like typedef struct BrinSpecialSpace {uint16 vector[MAXALIGN(1) / sizeof(uint16)]; } BrinSpecialSpace; and then some access macros to use the last and next-to-last elements of that array. regards, tom lane
В списке pgsql-hackers по дате отправления: