Re: OSDL DBT-2 w/ PostgreSQL 7.3.4 and 7.4beta5

Manfred Spraul <manfred@colorfullife.com>

From: Manfred Spraul <manfred@colorfullife.com>
To: Tom Lane <tgl@sss.pgh.pa.us>
Cc: markw@osdl.org, pgsql-hackers@postgresql.org, osdldbt-general@lists.sourceforge.net
Date: 2003-11-01T19:10:42Z
Lists: pgsql-hackers
Tom Lane wrote:

>Manfred Spraul <manfred@colorfullife.com> writes:
>  
>
>>signal handlers are a process property, not a thread property - that 
>>code is broken for multi-threaded apps.
>>    
>>
>
>Yeah, that's been mentioned before, but I don't see any way around it.
>
Do not handle SIGPIPE on multithreaded apps, and ask the caller to do 
that? The current code doesn't block SIGPIPE reliably, which makes it 
totally useless (except that it's a debugging nightmare, because 
triggering it depends on the right timing).

>What we really want is to turn off SIGPIPE delivery on our socket
>(only), but AFAIK there is no API to do that.
>  
>
Linux has as MSG_NOSIGNAL flag for send(), but that seems to be Linux 
specific.

--
    Manfred