| From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
|---|---|
| To: | Heikki Linnakangas <heikki(dot)linnakangas(at)enterprisedb(dot)com> |
| Cc: | Simon Riggs <simon(at)2ndQuadrant(dot)com>, pgsql-bugs(at)postgresql(dot)org |
| Subject: | Re: GIN needs tonic |
| Date: | 2009-09-15 16:09:58 |
| Message-ID: | 13269.1253030998@sss.pgh.pa.us |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-bugs |
Heikki Linnakangas <heikki(dot)linnakangas(at)enterprisedb(dot)com> writes:
> Tom Lane wrote:
>> Actually, the entire thing is misdesigned from the get-go. AFAICS
>> it shouldn't even have its own WAL record type --- it should be using
>> log_newpage().
> Yeah, that would be even simpler. The WAL records it currenctly writes
> are more compact, but then again it probably makes no difference in
> practice.
I'm working on this now. It looks to me like there are a number of bugs
in this code, notably I think that the accounting for free space on
GinList pages is failing to allow for alignment effects.
One difficulty in using log_newpage() directly is that it presently
assumes that the page it's passed has been built in private memory,
not in a shared buffer. I'm not sure if it's worth restructuring the
GIN code to do it that way.
regards, tom lane
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Tom Lane | 2009-09-15 17:54:42 | Re: error: message type 0x5a arrived from server while idle |
| Previous Message | Heikki Linnakangas | 2009-09-15 15:56:29 | Re: GIN needs tonic |