Re: Reopen logfile on SIGHUP - Mailing list pgsql-hackers

From Alexander Kuzmenkov
Subject Re: Reopen logfile on SIGHUP
Date
Msg-id 5142559a-82e6-b3e4-d6ed-8fd2d240c77e@postgrespro.ru
Whole thread Raw
In response to Re: Reopen logfile on SIGHUP  (Kyotaro HORIGUCHI <horiguchi.kyotaro@lab.ntt.co.jp>)
Responses Re: Reopen logfile on SIGHUP
List pgsql-hackers
On 08/09/2018 10:33 AM, Kyotaro HORIGUCHI wrote:
>
> - Since I'm not sure unlink is signal-handler safe on all
>    supported platforms, I moved unlink() call out of
>    checkLogrotateSignal() to SysLoggerMain, just before rotating
>    log file.

Which platforms specifically do you have in mind? unlink() is required 
to be async-signal-safe by POSIX.1-2001, which is required by UNIX 03, 
and these are rather old.
For UNIX 03-certified distributions, see this list: 
http://www.opengroup.org/csq/search/t=XY1.html
For FreeBSD, unlink() was signal-safe at least in 4.0, which was 
released in 2000 

https://www.freebsd.org/cgi/man.cgi?query=sigaction&apropos=0&sektion=0&manpath=FreeBSD+4.0-RELEASE&arch=default&format=html
Debian 4.0, which was released in 2007 and had a 2.6 kernel, also claims 
to have a signal-safe unlink(): 
https://www.freebsd.org/cgi/man.cgi?query=signal&apropos=0&sektion=0&manpath=Debian+4.0.9&arch=default&format=html

-- 
Alexander Kuzmenkov
Postgres Professional: http://www.postgrespro.com
The Russian Postgres Company



pgsql-hackers by date:

Previous
From: Thomas Munro
Date:
Subject: Re: Postgres, fsync, and OSs (specifically linux)
Next
From: Arthur Zakirov
Date:
Subject: Re: [HACKERS] WIP Patch: Pgbench Serialization and deadlock errors