]> granicus.if.org Git - postgresql/commit
Create a new dedicated Postgres process, "wal writer", which exists to write
authorTom Lane <tgl@sss.pgh.pa.us>
Tue, 24 Jul 2007 04:54:09 +0000 (04:54 +0000)
committerTom Lane <tgl@sss.pgh.pa.us>
Tue, 24 Jul 2007 04:54:09 +0000 (04:54 +0000)
commitad4295728e04f4107f4dcbbee4950e526becb95d
treeb816acb0fe3fa95d884f95aa916d8582cf8c7c77
parent53d2951be7687089885865f31949eda87439a80b
Create a new dedicated Postgres process, "wal writer", which exists to write
and fsync WAL at convenient intervals.  For the moment it just tries to
offload this work from backends, but soon it will be responsible for
guaranteeing a maximum delay before asynchronously-committed transactions
will be flushed to disk.

This is a portion of Simon Riggs' async-commit patch, committed to CVS
separately because a background WAL writer seems like it might be a good idea
independently of the async-commit feature.  I rebased walwriter.c on
bgwriter.c because it seemed like a more appropriate way of handling signals;
while the startup/shutdown logic in postmaster.c is more like autovac because
we want walwriter to quit before we start the shutdown checkpoint.
doc/src/sgml/config.sgml
src/backend/access/transam/xlog.c
src/backend/bootstrap/bootstrap.c
src/backend/postmaster/Makefile
src/backend/postmaster/postmaster.c
src/backend/postmaster/walwriter.c [new file with mode: 0644]
src/backend/utils/misc/guc.c
src/backend/utils/misc/postgresql.conf.sample
src/include/access/xlog.h
src/include/bootstrap/bootstrap.h
src/include/postmaster/walwriter.h [new file with mode: 0644]