Re: basic_archive lost archive_directory
Fujii Masao <masao.fujii@gmail.com>
From: Fujii Masao <masao.fujii@gmail.com>
To: Nathan Bossart <nathandbossart@gmail.com>
Cc: Sergei Kornilov <sk@zsrv.org>, Олег Самойлов <splarv@ya.ru>, pgsql-bugs@lists.postgresql.org, Álvaro Herrera <alvherre@kurilemu.de>
Date: 2026-02-26T23:18:09Z
Lists: pgsql-bugs
On Wed, Feb 25, 2026 at 2:34 AM Nathan Bossart <nathandbossart@gmail.com> wrote: > > On Tue, Feb 24, 2026 at 01:28:50PM +0900, Fujii Masao wrote: > > I agree with removing the check from the GUC check hook. My only concern is > > that simply removing it (rather than relocating it) changes the error message > > users see when archive_directory is misconfigured, which may make > > troubleshooting WAL archiving failures slightly harder. > > > > [Current] > > WARNING: invalid value for parameter > > "basic_archive.archive_directory": "not_exists" > > DETAIL: Specified archive directory does not exist. > > > > [With the patch] > > ERROR: could not create file > > "not_exists/archtemp.00000001000000000000000E.80107.1771905339058": No > > such file or directory > > > > One option would be to perform the check in check_configured_cb(), > > but as you noted, that would add an extra stat() call for each WAL archiving. > > If that overhead is unacceptable, another approach would be to wrap > > copy_file() in basic_archive_file() with PG_TRY() / PG_CATCH(). On error, > > we could stat() the archive directory and report a clearer reason if it does > > not exist. > > > > That said, if users are generally fine with the "could not create file" error, > > I'm ok with the proposed patch (i.e., just removing the check). > > I think it's fine as-is. If something is wrong with the error message, > IMHO we should fix the error message. Adding extra stat() calls to try to > give a nicer message might work most of the time, but there are still race > conditions where users will see the original one. But in any case, I > believe the current message style is used in many places, so I don't see a > strong reason to do anything different here. Ok, so since I seem to be the only one with some reservations about the message, I'm fine with proceeding with the proposed change. Regards, -- Fujii Masao
Commits
-
basic_archive: Allow archive directory to be missing at startup.
- f510577de4f5 17.10 landed
- cc774c543b23 19 (unreleased) landed
- bde9ad31515a 18.4 landed
- 8fc45ac5d91a 15.18 landed
- 28c2b789652a 16.14 landed