Heikki Linnakangas <heikki.linnakangas@enterprisedb.com> writes:
> Our last-minute changes in 8.4 to allow checkpoint record to be created,
> while forbidding other WAL insertions, missed that CreateCheckPoint()
> calls AdvanceXLInsertBuffer() which requires a valid ThisTimeLineID to
> be set. We need to initialize ThisTimeLineID before we call
> AdvanceXLInsertBuffer().
Ah-hah ...
> Attached is a straightforward fix which initializes ThisTimeLineID
> before the AdvanceXLInsertBuffer() call. Barring objections, I'll commit
> that.
... but this solution is astonishingly ugly. I think we should move up
the LocalSetXLogInsertAllowed call, instead.
regards, tom lane