Re: GIN needs tonic

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 21:09:57
Message-ID: 23545.1253048997@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

Heikki Linnakangas <heikki(dot)linnakangas(at)enterprisedb(dot)com> writes:
> Tom Lane wrote:
>> BTW, there's more than one bug here :-(. Heikki found one, but the
>> code is also attaching the buffer indicator to the wrong rdata entry
>> --- the record header, not the workspace, is what gets suppressed
>> if the full page is logged.

> I saw that, but I figured it should be attaching both rdata entries to
> the buffer, so that both are suppressed if a full page image is logged.
> I guess the header can be useful for debugging purposes, even though the
> redo function doesn't use it for anything.

Yeah, for instance xlog logging (gin_desc) expects the header to be there.

As you mentioned, another tack we could take is to not connect the
buffer to the xlog record at all, and just reinitialize the page from
the xlog record contents. I left it as was, but this might be a
reasonable alternative to using HEAP_NEWPAGE.

regards, tom lane

In response to

Browse pgsql-bugs by date

  From Date Subject
Next Message postgres bee 2009-09-15 21:11:47 Re: BUG #5055: Invalid page header error
Previous Message Simon Riggs 2009-09-15 20:51:42 Re: GIN needs tonic