From: | tgl(at)postgresql(dot)org (Tom Lane) |
---|---|
To: | pgsql-committers(at)postgresql(dot)org |
Subject: | pgsql: During WAL recovery, when reading a page that we intend to |
Date: | 2007-05-02 23:18:04 |
Message-ID: | 20070502231804.0BB999FBD04@postgresql.org |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-committers |
Log Message:
-----------
During WAL recovery, when reading a page that we intend to overwrite completely
from the WAL data, don't bother to physically read it; just have bufmgr.c
return a zeroed-out buffer instead. This speeds recovery significantly,
and also avoids unnecessary failures when a page-to-be-overwritten has corrupt
page headers on disk. This replaces a former kluge that accomplished the
latter by pretending zero_damaged_pages was always ON during WAL recovery;
which was OK when the kluge was put in, but is unsafe when restoring a WAL
log that was written with full_page_writes off.
Heikki Linnakangas
Modified Files:
--------------
pgsql/src/backend/access/transam:
xlogutils.c (r1.49 -> r1.50)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/access/transam/xlogutils.c.diff?r1=1.49&r2=1.50)
pgsql/src/backend/storage/buffer:
bufmgr.c (r1.216 -> r1.217)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/storage/buffer/bufmgr.c.diff?r1=1.216&r2=1.217)
pgsql/src/include/storage:
bufmgr.h (r1.102 -> r1.103)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/storage/bufmgr.h.diff?r1=1.102&r2=1.103)
From | Date | Subject | |
---|---|---|---|
Next Message | Tom Lane | 2007-05-02 23:34:48 | pgsql: Dept. |
Previous Message | User Hinoue | 2007-05-02 21:44:13 | psqlodbc - psqlodbc: The version is now 8.2.0401. |