Re: B-tree parent pointer and checkpoints

Tom Lane <tgl@sss.pgh.pa.us>

From: Tom Lane <tgl@sss.pgh.pa.us>
To: Heikki Linnakangas <heikki.linnakangas@enterprisedb.com>
Cc: Bruce Momjian <bruce@momjian.us>, Greg Stark <gsstark@mit.edu>, Teodor Sigaev <teodor@sigaev.ru>, PostgreSQL-development <pgsql-hackers@postgresql.org>, Oleg Bartunov <oleg@sai.msu.su>
Date: 2011-03-11T15:59:34Z
Lists: pgsql-hackers

Commits

Same data as JSON: GET /api/v1/messages/:b64id/commits the thread's linked commits as JSON, with link sources. API reference →
  1. Rewrite the GiST insertion logic so that we don't need the post-recovery

Heikki Linnakangas <heikki.linnakangas@enterprisedb.com> writes:
> On 10.03.2011 22:50, Bruce Momjian wrote:
>> Bruce Momjian wrote:
> 
> Has this been addressed?
>> 
>> I see we have with this commit:
>> 
>> 9de3aa65f01fb51cbc725e8508ea233e4e92c46c

> We fixed GiST. B-tree still has the issue that if you have a checkpoint 
> in the middle of an insert, and crash, you might be left with a leaf 
> node without a downlink in the parent.

But that will be fixed during WAL replay.

> That's relatively harmless, index searches and insertions work without 
> the downlink. However, there's code in page deletion that ERRORs if the 
> parent can't be found. That should be fixed.

I don't like the idea of removing that consistency check, and I don't
think it's necessary to do so.

			regards, tom lane