| From: | Teodor Sigaev <teodor(at)stack(dot)net> |
|---|---|
| To: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
| Cc: | Oleg Bartunov <oleg(at)sai(dot)msu(dot)su>, pgsql-hackers(at)postgresql(dot)org |
| Subject: | Re: GiST on 64-bit box |
| Date: | 2002-02-11 09:50:29 |
| Message-ID: | 3C6793E5.2050601@stack.net |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-hackers |
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(at)stack(dot)net
| Attachment | Content-Type | Size |
|---|---|---|
| patch_gist.gz | application/gzip | 1.4 KB |
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Jean-Michel POURE | 2002-02-11 10:20:04 | Re: Fetature enhancement request : use of libgda in PostgreSQL to access legacy databases. |
| Previous Message | Lee Kindness | 2002-02-11 09:44:27 | Re: IFNULL -> COALESCE |