Re: Receiving SIGPIPE for PQfinish() - Mailing list pgsql-interfaces

From Volkan YAZICI
Subject Re: Receiving SIGPIPE for PQfinish()
Date
Msg-id 20060424101705.GB259@alamut
Whole thread Raw
In response to Re: Receiving SIGPIPE for PQfinish()  (Bruce Momjian <pgman@candle.pha.pa.us>)
Responses Re: Receiving SIGPIPE for PQfinish()
List pgsql-interfaces
On Apr 23 12:09, Bruce Momjian wrote:
> Did you ever get this fixed?

Actually, I couldn't reproduce same error on my current system -
although, as I understand, none of the related source files were
modified. (That failure was reported using Debian Sarge 3.1, so
it could be caused by buggy debian libraries - like their buggy
getpw..._r() family.)

> Volkan YAZICI wrote:
> > On Mar 12 11:18, Tom Lane wrote:
> > > pqsecure_write should have disabled SIGPIPE already.  You should look
> > > into why that is seemingly not working.
> > 
> > When I omit --enable-thread-safety, code doesn't handle in the case of
> > a SIG_ERR return on the call to pqsignal() made from pqsecure_write().
> > 
> > Furthermore, I still couldn't figure out why pqsignal() cannot handle
> > SIGPIPE - despite pqsignal() doesn't return SIG_ERR. (A related small
> > debug output is attached.)

I don't have much experience with signal handling but if any hacker will
ever get chance to take a look at SIG_ERR returning pqsignal() calls'
handling, above problem (?) will be clarified.

> > Everything works fine when thread safety is enabled.

What are the reasons for thread-safety is not enabled by default? Is
this because related system may not support thread locking to be used in
libpq?


Regards.


pgsql-interfaces by date:

Previous
From: Bruce Momjian
Date:
Subject: Re: Building psql.exe using the free Borland compiler
Next
From: Bruce Momjian
Date:
Subject: Re: Receiving SIGPIPE for PQfinish()