Tom Lane wrote:
> Heikki Linnakangas <heikki.linnakan...@enterprisedb.com> writes:
>> In archive recovery, we always start bgwriter at the beginning of WAL
>> replay. In crash recovery, we don't start bgwriter until the end of wAL
>> replay. So we could change the "!isRedo" condition to
>> "!InArchiveRecovery". It's not a very clean solution, but it's simple.
> 
> This is probably what is needed.  We need to look around for other tests
> of "in redo" that have been obsoleted by the change in bgwriter
> behavior.

We have another problem with the end-of-recovery checkpoint. When the
startup process does the checkpoint, it won't know to perform the
pending fsyncs() the bgwriter has absorbed.

A short fix would be to have bgwriter do the shutdown checkpoint instead
in archive recovery. I don't recall if there was a reason it wasn't
coded like that to begin with, though.

-- 
  Heikki Linnakangas
  EnterpriseDB   http://www.enterprisedb.com

-- 
Sent via pgsql-bugs mailing list (pgsql-bugs@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-bugs

Reply via email to