pgsql: Remove InitXLOGAccess(). - Mailing list pgsql-committers

From Robert Haas
Subject pgsql: Remove InitXLOGAccess().
Date
Msg-id E1mwmyA-0004As-PB@gemulon.postgresql.org
Whole thread Raw
List pgsql-committers
Remove InitXLOGAccess().

It's not great that RecoveryInProgress() calls InitXLOGAccess(),
because a status inquiry function typically shouldn't have the side
effect of performing initializations. We could fix that by calling
InitXLOGAccess() from some other place, but instead, let's remove it
altogether.

One thing InitXLogAccess() did is initialize wal_segment_size, but it
doesn't need to do that. In the postmaster, PostmasterMain() calls
LocalProcessControlFile(), and all child processes will inherit that
value -- except in EXEC_BACKEND bulds, but then each backend runs
SubPostmasterMain() which also calls LocalProcessControlFile().

The other thing InitXLOGAccess() did is update RedoRecPtr and
doPageWrites, but that's not critical, because all code that uses
them will just retry if it turns out that they've changed. The
only difference is that most code will now see an initial value that
is definitely invalid instead of one that might have just been way
out of date, but that will only happen once per backend lifetime,
so it shouldn't be a big deal.

Patch by me, reviewed by Nathan Bossart, Michael Paquier, Andres
Freund, Heikki Linnakangas, and Álvaro Herrera.

Discussion: http://postgr.es/m/CA+TgmoY7b65qRjzHN_tWUk8B4sJqk1vj1d31uepVzmgPnZKeLg@mail.gmail.com

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/fa0e03c15a9f67671f0a6e0ec66d5e2ac7119c8a

Modified Files
--------------
src/backend/access/transam/xlog.c   | 63 ++++++++++---------------------------
src/backend/postmaster/auxprocess.c |  1 -
src/backend/utils/init/postinit.c   | 21 +++----------
src/include/access/xlog.h           |  1 -
4 files changed, 22 insertions(+), 64 deletions(-)


pgsql-committers by date:

Previous
From: Robert Haas
Date:
Subject: pgsql: Default to log_checkpoints=on, log_autovacuum_min_duration=10m
Next
From: Tom Lane
Date:
Subject: pgsql: Suppress -Wformat-overflow warnings in 9.2's xml.c.