pgsql: Split work of bgwriter between 2 processes: bgwriter and checkpo

Lists: pgsql-committers
From: Simon Riggs <simon(at)2ndQuadrant(dot)com>
To: pgsql-committers(at)postgresql(dot)org
Subject: pgsql: Split work of bgwriter between 2 processes: bgwriter and checkpo
Date: 2011-11-01 17:15:54
Message-ID: E1RLHwI-0007rE-MP@gemulon.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-committers

Split work of bgwriter between 2 processes: bgwriter and checkpointer.
bgwriter is now a much less important process, responsible for page
cleaning duties only. checkpointer is now responsible for checkpoints
and so has a key role in shutdown. Later patches will correct doc
references to the now old idea that bgwriter performs checkpoints.
Has beneficial effect on performance at high write rates, but mainly
refactoring to more easily allow changes for power reduction by
simplifying previously tortuous code around required to allow page
cleaning and checkpointing to time slice in the same process.

Patch by me, Review by Dickson Guedes

Branch
------
master

Details
-------
http://git.postgresql.org/pg/commitdiff/806a2aee3791244bf0f916729bfdb5489936e068

Modified Files
--------------
src/backend/bootstrap/bootstrap.c | 8 +
src/backend/postmaster/Makefile | 2 +-
src/backend/postmaster/bgwriter.c | 944 +----------------------------------
src/backend/postmaster/postmaster.c | 99 +++-
src/backend/storage/buffer/bufmgr.c | 6 +-
src/backend/storage/smgr/md.c | 38 +-
src/include/access/xlog_internal.h | 2 +-
src/include/bootstrap/bootstrap.h | 1 +
src/include/postmaster/bgwriter.h | 1 +
src/include/storage/proc.h | 8 +-
src/include/storage/procsignal.h | 2 +-
11 files changed, 124 insertions(+), 987 deletions(-)