Skip site navigation (1) Skip section navigation (2)

pgsql: Implement "distributed" checkpoints in which the checkpoint I/O

From: tgl(at)postgresql(dot)org (Tom Lane)
To: pgsql-committers(at)postgresql(dot)org
Subject: pgsql: Implement "distributed" checkpoints in which the checkpoint I/O
Date: 2007-06-28 00:02:41
Message-ID: 20070628000241.CDE2B9FA36E@postgresql.org (view raw or flat)
Thread:
Lists: pgsql-committers
Log Message:
-----------
Implement "distributed" checkpoints in which the checkpoint I/O is spread
over a fairly long period of time, rather than being spat out in a burst.
This happens only for background checkpoints carried out by the bgwriter;
other cases, such as a shutdown checkpoint, are still done at full speed.

Remove the "all buffers" scan in the bgwriter, and associated stats
infrastructure, since this seems no longer very useful when the checkpoint
itself is properly throttled.

Original patch by Itagaki Takahiro, reworked by Heikki Linnakangas,
and some minor API editorialization by me.

Modified Files:
--------------
    pgsql/doc/src/sgml:
        config.sgml (r1.128 -> r1.129)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/doc/src/sgml/config.sgml.diff?r1=1.128&r2=1.129)
        monitoring.sgml (r1.50 -> r1.51)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/doc/src/sgml/monitoring.sgml.diff?r1=1.50&r2=1.51)
        wal.sgml (r1.43 -> r1.44)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/doc/src/sgml/wal.sgml.diff?r1=1.43&r2=1.44)
    pgsql/src/backend/access/transam:
        xlog.c (r1.272 -> r1.273)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/access/transam/xlog.c.diff?r1=1.272&r2=1.273)
    pgsql/src/backend/bootstrap:
        bootstrap.c (r1.233 -> r1.234)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/bootstrap/bootstrap.c.diff?r1=1.233&r2=1.234)
    pgsql/src/backend/catalog:
        system_views.sql (r1.37 -> r1.38)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/catalog/system_views.sql.diff?r1=1.37&r2=1.38)
    pgsql/src/backend/commands:
        dbcommands.c (r1.195 -> r1.196)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/commands/dbcommands.c.diff?r1=1.195&r2=1.196)
    pgsql/src/backend/postmaster:
        bgwriter.c (r1.38 -> r1.39)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/postmaster/bgwriter.c.diff?r1=1.38&r2=1.39)
        pgstat.c (r1.159 -> r1.160)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/postmaster/pgstat.c.diff?r1=1.159&r2=1.160)
    pgsql/src/backend/storage/buffer:
        bufmgr.c (r1.221 -> r1.222)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/storage/buffer/bufmgr.c.diff?r1=1.221&r2=1.222)
    pgsql/src/backend/tcop:
        utility.c (r1.281 -> r1.282)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/tcop/utility.c.diff?r1=1.281&r2=1.282)
    pgsql/src/backend/utils/adt:
        pgstatfuncs.c (r1.42 -> r1.43)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/utils/adt/pgstatfuncs.c.diff?r1=1.42&r2=1.43)
    pgsql/src/backend/utils/misc:
        guc.c (r1.402 -> r1.403)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/utils/misc/guc.c.diff?r1=1.402&r2=1.403)
        postgresql.conf.sample (r1.216 -> r1.217)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/utils/misc/postgresql.conf.sample.diff?r1=1.216&r2=1.217)
    pgsql/src/include/access:
        xlog.h (r1.78 -> r1.79)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/access/xlog.h.diff?r1=1.78&r2=1.79)
    pgsql/src/include/catalog:
        catversion.h (r1.412 -> r1.413)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/catversion.h.diff?r1=1.412&r2=1.413)
        pg_proc.h (r1.460 -> r1.461)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_proc.h.diff?r1=1.460&r2=1.461)
    pgsql/src/include:
        pgstat.h (r1.62 -> r1.63)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/pgstat.h.diff?r1=1.62&r2=1.63)
    pgsql/src/include/postmaster:
        bgwriter.h (r1.9 -> r1.10)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/postmaster/bgwriter.h.diff?r1=1.9&r2=1.10)
    pgsql/src/include/storage:
        buf_internals.h (r1.90 -> r1.91)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/storage/buf_internals.h.diff?r1=1.90&r2=1.91)
        bufmgr.h (r1.104 -> r1.105)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/storage/bufmgr.h.diff?r1=1.104&r2=1.105)
    pgsql/src/test/regress/expected:
        rules.out (r1.129 -> r1.130)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/test/regress/expected/rules.out.diff?r1=1.129&r2=1.130)

pgsql-committers by date

Next:From: Neil ConwayDate: 2007-06-28 06:40:17
Subject: pgsql: Add the function's volatility to the output of psql's \df+
Previous:From: User KorrydDate: 2007-06-27 19:13:37
Subject: pg-migrator - src: Porting to Solaris

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group