Re: Checking pgwin32_is_junction() errors - Mailing list pgsql-hackers

From Michael Paquier
Subject Re: Checking pgwin32_is_junction() errors
Date
Msg-id YmEOJwmmKPugH41o@paquier.xyz
Whole thread Raw
In response to Checking pgwin32_is_junction() errors  (Thomas Munro <thomas.munro@gmail.com>)
Responses Re: Checking pgwin32_is_junction() errors  (Thomas Munro <thomas.munro@gmail.com>)
List pgsql-hackers
On Thu, Mar 24, 2022 at 04:30:26PM +1300, Thomas Munro wrote:
> I think it'd be better to add missing_ok and elevel parameters,
> following existing patterns.  Unfortunately, it can't use the generic
> frontend logging to implement elevel in frontend code from its current
> location, because pgport can't call pgcommon.  For now I came up with
> a kludge to work around that problem, but I don't like it, and would
> need to come up with something better...

The only barrier reason why elevel if needed is because of pg_wal in
SyncDataDirectory() that cannot fail hard.  I don't have a great idea
here, except using a bits32 with some bitwise flags to control the
behavior of the routine, aka something close to a MISSING_OK and a
FAIL_HARD_ON_ERROR.  This pattern exists already in some of the
*Extended() routines.
--
Michael

Attachment

pgsql-hackers by date:

Previous
From: Richard Guo
Date:
Subject: Re: Assert failure in CTE inlining with view and correlated subquery
Next
From: David Rowley
Date:
Subject: Re: effective_io_concurrency and NVMe devices