OSDN Git Service

In the checkpoint written at the end of archive recovery, the WAL page header
authorHeikki Linnakangas <heikki.linnakangas@iki.fi>
Thu, 27 Aug 2009 07:15:41 +0000 (07:15 +0000)
committerHeikki Linnakangas <heikki.linnakangas@iki.fi>
Thu, 27 Aug 2009 07:15:41 +0000 (07:15 +0000)
commit9cd6685f918898eaa543fda95751fc804ee22348
tree1367f468e9893cc56f214b55248355eca133efa3
parenta814170d8901a5039cf8e85e490c7cfc47ae33e2
In the checkpoint written at the end of archive recovery, the WAL page header
was incorrectly initialized with timeline ID 0. That rendered the WAL page
unrecoverable, making a subsequent archive recovery stop at that point.
ThisTimeLineID needs to be initialized before calling AdvanceXLInsertBuffer().

This fixes bug #5011 reported by James Bardin. Backpatch to 8.4, as the bug
was introduced by the changes to use of bgwriter for writing the
end-of-archive-recovery checkpoint. Patch by Tom Lane.
src/backend/access/transam/xlog.c