Making Replication Robust
Carson Gaspar
carson at taltos.org
Fri Oct 12 10:29:53 EDT 2007
David Carter wrote:
> I'm still a little bothered about signal handling and EINTR. I did some
> experiments after our last chat about signals. In practice disk IO
> system calls seem to be reasonably safe against EINTR on both Linux and
> Solaris, but a trip to Google suggests that there are few guarantees:
>
> http://archives.postgresql.org/pgsql-hackers/2005-12/msg01259.php
>
> There seems to be a spilt of opinion between BSD and SVR4: BSD tries to
> retry while SVR4 throws EINTR. Linux of course can work either way:
>
> http://www.gnu.org/software/libc/manual/html_node/Interrupted-Primitives.html
I suggest reading the POSIX specs. Restart vs. EINTR is specified
explicitly on any POSIX platform (including all the *BSDs, Solaris,
Linux, ...). If cyrus is still using signal() and friends anywhere, they
desperately need to be replaced with sigaction().
--
Carson
More information about the Cyrus-devel
mailing list