pgsql: Simplify do_pg_start_backup's API by opening pg_tblspcinternall - Mailing list pgsql-committers

From Tom Lane
Subject pgsql: Simplify do_pg_start_backup's API by opening pg_tblspcinternall
Date
Msg-id E1eM0JC-0005yh-Tf@gemulon.postgresql.org
Whole thread Raw
List pgsql-committers
Simplify do_pg_start_backup's API by opening pg_tblspc internally.

do_pg_start_backup() expects its callers to pass in an open DIR pointer
for the pg_tblspc directory, but there's no apparent advantage in that.
It complicates the callers without adding any flexibility, and there's no
robustness advantage, since we surely have to be prepared for errors during
the scan of pg_tblspc anyway.  In fact, by holding an extra kernel resource
during operations like the preliminary checkpoint, we might be making
things a fraction more failure-prone not less.  Hence, remove that argument
and open the directory just for the duration of the actual scan.

Discussion: https://postgr.es/m/28752.1512413887@sss.pgh.pa.us

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/066bc21c0e085e2642ff25cc665c4efad3669d6f

Modified Files
--------------
src/backend/access/transam/xlog.c      |  6 ++++--
src/backend/access/transam/xlogfuncs.c | 15 ++-------------
src/backend/replication/basebackup.c   | 19 ++++---------------
src/include/access/xlog.h              |  2 +-
4 files changed, 11 insertions(+), 31 deletions(-)


pgsql-committers by date:

Previous
From: Tom Lane
Date:
Subject: pgsql: Improve error handling in RemovePgTempFiles().
Next
From: Thomas Munro
Date:
Subject: Re: pgsql: Add some regression tests that exercise hash join code.