This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author David.Edelsohn
Recipients David.Edelsohn, gvanrossum, neologix, python-dev, skrah
Date 2013-10-19.17:36:21
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1382204181.74.0.53121230751.issue19293@psf.upfronthosting.co.za>
In-reply-to
Content
My understanding of the issue is POSIX and The Open Group specification are ambiguous about the handling of Unix socket API calls when interrupted by a signal. Linux implements a more liberal, accommodating behavior and the Python Async I/O implementation is assuming those semantics. AIX inherited a lot from OSF, Mac OS X/Darwin inherited a lot from FreeBSD, both of which adopted more "unforgiving behavior".

The following web page seems to summarize the issue:

http://www.madore.org/~david/computers/connect-intr.html

I don't know if the description still is accurate for BSDs, but AIX likely implemented more pedantic, unforgiving semantics.

The standard seems to allow the behavior seen in AIX and FreeBSD, regardless of whether it is less useful / pleasant. From a pedantic standpoint, I think this is a bug in the Python implementation of Async I/O because it assumes behavior (implemented by Linux) not required by an implementation that conforms to the POSIX and Open Group specifications.
History
Date User Action Args
2013-10-19 17:36:21David.Edelsohnsetrecipients: + David.Edelsohn, gvanrossum, skrah, neologix, python-dev
2013-10-19 17:36:21David.Edelsohnsetmessageid: <1382204181.74.0.53121230751.issue19293@psf.upfronthosting.co.za>
2013-10-19 17:36:21David.Edelsohnlinkissue19293 messages
2013-10-19 17:36:21David.Edelsohncreate