This patch solve the problem with unaligned access on 64-bit box. Please apply
it for 7.2.1.
Tested on DEC Alpha.
Tom Lane wrote:
> Actually, there is a third possibility, which would fix the problem
> without requiring any changes in the picksplit functions. You could
> do this:
>
> char *storage;
>
> storage = palloc(MAXALIGN(VARHDRSZ) + (*len + 1) * sizeof(GISTENTRY));
> entryvec = (bytea *) (storage + MAXALIGN(VARHDRSZ) - VARHDRSZ);
>
> use entryvec as before, except final pfree is pfree(storage)
>
> Grotty as heck, but probably the right answer for 7.2.1 to avoid the
> initdb issues.
>
> For 7.3 we could do it the other, cleaner way.
>
> regards, tom lane
>
>
--
Teodor Sigaev
teodor@stack.net