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