David Edelsohn added the comment:

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.

----------

_______________________________________
Python tracker <rep...@bugs.python.org>
<http://bugs.python.org/issue19293>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to