What is CheckPoint.undo needed for?

From: "Florian G(dot) Pflug" <fgp(at)phlo(dot)org>
To: Postgresql-General <pgsql-hackers(at)postgresql(dot)org>
Subject: What is CheckPoint.undo needed for?
Date: 2007-02-22 13:26:41
Message-ID: 45DD9A11.5050105@phlo.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Hi

I'm trying to gain a better understanding of how the postgres
xlog works - especially about the corner cases of wal replay.

One thing that I do not understand is what CheckPoint.undo is
used for. I grepped through the source, and only see very few
references to it, which either just print it, or set it to
the checkpoint location or the redo location.

The only place where is is checked is
if (XLByteLT(checkPoint.undo, RecPtr) || XLByteLT(checkPoint.redo, RecPtr))
but I don't see the reason for this check, given that undo never
seems to be assigned any interesting value..

Is there any in-depth documentation about the postgres xlog
implementation?
What am I missing?

greetings, Florian Pflug

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Teodor Sigaev 2007-02-22 13:33:57 Re: tsearch in core patch, for inclusion
Previous Message Teodor Sigaev 2007-02-22 13:26:23 Re: tsearch in core patch, for inclusion