[ psqlodbc-Bugs-1010541 ] applications crash with SIGPIPE

From: <noreply(at)pgfoundry(dot)org>
To: noreply(at)pgfoundry(dot)org
Subject: [ psqlodbc-Bugs-1010541 ] applications crash with SIGPIPE
Date: 2009-01-04 03:01:14
Message-ID: 20090104030114.BF1B617ADE6D@pgfoundry.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-odbc

Bugs item #1010541, was opened at 2008-12-29 20:42
You can respond by visiting:
http://pgfoundry.org/tracker/?func=detail&atid=538&aid=1010541&group_id=1000125

Category: None
Group: None
Status: Open
Resolution: None
Priority: 3
Submitted By: Brian Feldman (brianfeldman)
Assigned to: Hiroshi Inoue (hinoue)
Summary: applications crash with SIGPIPE

Initial Comment:
Any time a PostgreSQL server is restarted, applications using the ODBC driver to connect to it will get a SIGPIPE and often crash because of it. Libraries have no business generating SIGPIPE, so MSG_NOSIGNAL/MSG_NOSIGPIPE/etc. should be specified for the send(2) calls instead.

----------------------------------------------------------------------

>Comment By: Hiroshi Inoue (hinoue)
Date: 2009-01-04 03:01

Message:
I've just committed a change to CVS according to your
suggestion.

Thanks.
Hiroshi Inoue

----------------------------------------------------------------------

Comment By: Brian Feldman (brianfeldman)
Date: 2009-01-02 17:30

Message:
Yes, it would simply be ideal, I think, to define a platform
specific SENDFLAGS and use that for all send() calls, i.e.
simply:
/*
* Do not generate SIGPIPE for applications that get
disconnected.
*/
#if defined(MSG_NOSIGNAL)
#define SENDFLAGS MSG_NOSIGNAL
#elif defined(MSG_NOSIGPIPE)
#define SENDFLAGS MSG_NOSIGPIPE
#else
#define SENDFLAGS 0
#end

It seems that Windows actually did not copy the socket
SIGPIPE design mistake from Unix. If it did, I think it
would be appropriate to disable it there as well. Some Unix
platforms don't have a way to disable SIGPIPE at all,
unfortunately, so it cannot be consistent. Thank you for
your help!

----------------------------------------------------------------------

Comment By: Hiroshi Inoue (hinoue)
Date: 2008-12-30 23:00

Message:
I can't such values in Windows. Is it related to *nix platforms? If so I would take care od it in the next release.

----------------------------------------------------------------------

You can respond by visiting:
http://pgfoundry.org/tracker/?func=detail&atid=538&aid=1010541&group_id=1000125

Browse pgsql-odbc by date

  From Date Subject
Next Message noreply 2009-01-04 04:39:40 [ psqlodbc-Bugs-1010397 ] SQLForeignKeys no rows returned
Previous Message noreply 2009-01-04 02:58:18 [ psqlodbc-Bugs-1010515 ] Small negative decimal values are mistaken for non-negative