Re: [HACKERS] Infrastructure changes for recovery
От | Simon Riggs |
---|---|
Тема | Re: [HACKERS] Infrastructure changes for recovery |
Дата | |
Msg-id | 1220213074.4371.173.camel@ebony.2ndQuadrant обсуждение исходный текст |
Ответы |
Re: [HACKERS] Infrastructure changes for recovery
|
Список | pgsql-patches |
On Thu, 2008-08-07 at 12:44 +0100, Simon Riggs wrote: > I would like to propose some changes to the infrastructure for recovery. > These changes are beneficial in themselves, but also form the basis for > other work we might later contemplate. > > Currently > * the startup process performs restartpoints during recovery > * the death of the startup process is tied directly to the change of > state in the postmaster following recovery > > I propose to > * have startup process signal postmaster when it starts Redo phase (if > it starts it) > Decoupling things in this way allows us to > 1. arrange for the bgwriter to start during Redo, so it can: > i) clean dirty blocks for the startup process > ii) perform restartpoints in background > Both of these aspects will increase performance of recovery Taking into account comments from Tom and Alvaro Included patch with the following changes: * new postmaster mode known as consistent recovery, entered only when recovery passes safe/consistent point. InRedo is now set in all processes when started/connected in consistent recovery mode. * bgwriter and stats process starts in consistent recovery mode. bgwriter changes mode when startup process completes. * bgwriter now performs restartpoints and also cleans shared_buffers while the startup process performs redo apply * recovery.conf parameter log_restartpoints is now deprecated, since function overlaps with log_checkpoints too much. I've kept the distinction between restartpoints and checkpoints in code, to avoid convoluted code. Minor change, not critical. [Replying to one of Alvaro's other comments: Startup process still uses XLogReadBuffer. I'm not planning on changing that either, at least not in this patch.] Patch doesn't conflict with rmgr plugin patch. Passes make check, but that's easy. Various other tests all seem to be working. -- Simon Riggs www.2ndQuadrant.com PostgreSQL Training, Services and Support
Вложения
В списке pgsql-patches по дате отправления: