Re: HAVE_WORKING_LINK still needed?

Peter Eisentraut <peter.eisentraut@2ndquadrant.com>

From: Peter Eisentraut <peter.eisentraut@2ndquadrant.com>
To: Alvaro Herrera <alvherre@2ndquadrant.com>, Tom Lane <tgl@sss.pgh.pa.us>
Cc: pgsql-hackers <pgsql-hackers@postgresql.org>
Date: 2020-03-04T16:37:23Z
Lists: pgsql-hackers

Attachments

On 2020-02-28 19:44, Alvaro Herrera wrote:
> On 2020-Feb-28, Tom Lane wrote:
> 
>> Also +1 for s/durable_link_or_rename/durable_link/.
> 
> Actually, it's not *that* either, because what the function does is link
> followed by unlink.  So it's more a variation of durable_rename with
> slightly different semantics -- the difference is what happens if a file
> with the target name already exists.  Maybe call it durable_rename_no_overwrite.

I have committed the first two patches.

Here is the third patch again, we renaming durable_link_or_rename() to 
durable_rename_excl().  This seems to match existing Unix system call 
naming best (see open() flag O_EXCL, and macOS has a renamex_np() flag 
RENAME_EXCL).

-- 
Peter Eisentraut              http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services

Commits

  1. Remove HAVE_WORKING_LINK

  2. Move pg_upgrade's Windows link() implementation to AC_REPLACE_FUNCS

  3. pg_standby: Don't use HAVE_WORKING_LINK

  4. Update Microsoft documentation link