On 29 August 2014 01:04, Thomas Munro <mu...@ip9.org> wrote: > On 28 August 2014 23:45, Tom Lane <t...@sss.pgh.pa.us> wrote: >> I don't claim to be an expert on this stuff, but I had the idea that >> multithreaded environments were supposed to track signal state per-thread >> not just per-process, precisely because of issues like this. > > After some googling, I found reply #3 in > https://community.oracle.com/thread/1950900?start=0&tstart=0 and > various other sources which say that in Solaris versions 10 they > changed SIGPIPE delivery from per process (as specified by UNIX98) to > per thread (as specified by POSIX:2001). But we are on version 11, so > my theory doesn't look great. (Though 9 is probably still in use out > there somewhere...)
I discovered that the machine we saw the problem on was running Solaris 9 at the time, but has been upgraded since. So I think my sigwait race theory may have been correct, but we can just put this down to a historical quirk and forget about it, because Solaris 9 is basically deceased ("extended support" ends in October 2014). Sorry for the noise. Best regards, Thomas Munro -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers