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