flock patch breaks things here - Mailing list pgsql-hackers

From Tom Lane
Subject flock patch breaks things here
Date
Msg-id 13213.904455723@sss.pgh.pa.us
Whole thread Raw
Responses Re: [HACKERS] flock patch breaks things here  (Tom <tom@sdf.com>)
Re: [HACKERS] flock patch breaks things here  (Massimo Dal Zotto <dz@cs.unitn.it>)
List pgsql-hackers
backend/libpq/pgcomm.c no longer compiles on my system.  The cvs log sez

Massimo Dal Zotto <dz@cs.unitn.it>
> socket-flock.patch
>       use advisory locks to check if the unix socket can be deleted.
>       A running postmaster keeps a lock on that file. A starting
>       postmaster exits if the file exists and is locked, otherwise
>       it deletes the sockets and proceeds.
>       This avoid the need to remove manually the file after a postmaster
>       or system crash.
>       I don't know if flock is available on any system. If not we could
>       define a HAVE_FLOCK set by configure.

flock is *VERY* far from portable.  I am aware of three or four
different, mutually incompatible file locking syscalls on different
Unix flavors.  flock is just one of the contestants.  Even if the
call syntax were uniform, the semantics are not portable enough to
be safe (advisory locks don't work on NFS-mounted files, for example).

Massimo has a good idea in the long run, but I have strong doubts that
we want to start working the bugs out two days before a beta release
cycle.  Portable file locking in Unix is a very nasty can of worms,
and I recommend not opening it at this particular point.

In short: I'd like to see this patch backed out until after 6.4.

            regards, tom lane

pgsql-hackers by date:

Previous
From: Bruce Momjian
Date:
Subject: new pg_upgrade command
Next
From: Tom
Date:
Subject: Re: [HACKERS] flock patch breaks things here