Re: BUG #6200: standby bad memory allocations on SELECT - Mailing list pgsql-bugs

From Robert Haas
Subject Re: BUG #6200: standby bad memory allocations on SELECT
Date
Msg-id CA+TgmoaiNK0T1=F0pj-tHHdOcn-JDDT5KrTV0zourNUNTJ-uUw@mail.gmail.com
Whole thread Raw
In response to Re: BUG #6200: standby bad memory allocations on SELECT  (Tom Lane <tgl@sss.pgh.pa.us>)
Responses Re: BUG #6200: standby bad memory allocations on SELECT
List pgsql-bugs
On Tue, Jan 31, 2012 at 4:25 PM, Tom Lane <tgl@sss.pgh.pa.us> wrote:
> Robert Haas <robertmhaas@gmail.com> writes:
>> On Tue, Jan 31, 2012 at 12:05 AM, Tom Lane <tgl@sss.pgh.pa.us> wrote:
>>> BTW, after a bit more reflection it occurs to me that it's not so much
>>> that the data is necessarily *bad*, as that it seemingly doesn't match
>>> the tuple descriptor that the backend's trying to interpret it with.
>
>> Hmm. =A0Could this be caused by the recovery process failing to obtain a
>> sufficiently strong lock on a buffer before replaying some WAL record?
>
> Well, I was kinda speculating that inadequate locking could result in
> use of a stale (or too-new?) tuple descriptor, and that would be as good
> a candidate as any if the basic theory were right. =A0But Bridget says
> they are not doing any DDL, so it's hard to see how there'd be any tuple
> descriptor mismatch at all. =A0Still baffled ...

No, I wasn't thinking about a tuple descriptor mismatch.  I was
imagining that the page contents themselves might be in flux while
we're trying to read from it.  Off the top of my head I don't see how
that can happen, but it would be awfully interesting to be able to see
which WAL record last touched the relevant heap page, and how long
before the error that happened.

--=20
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company

pgsql-bugs by date:

Previous
From: Bridget Frey
Date:
Subject: Re: BUG #6200: standby bad memory allocations on SELECT
Next
From: Tom Lane
Date:
Subject: Re: BUG #6424: Possible error in time to seconds conversion