[issue5661] asyncore should catch EPIPE while sending() and receiving()

2011-10-29 Thread Charles-François Natali
Charles-François Natali added the comment: > The test fails when use_poll is True. > The difference between using poll() and poll2(): poll uses select(2), while poll2 uses poll(2) (duh, that's confusing). It seems that on OS X Snow Leopard, poll(2) sets the POLLPRI flag upon EPIPE (and probabl

[issue5661] asyncore should catch EPIPE while sending() and receiving()

2011-10-29 Thread Xavier de Gaye
Xavier de Gaye added the comment: The test fails when use_poll is True. The difference between using poll() and poll2(): poll: All the read events are processed before the write events, so the close after the first recv by TestHandler will be followed by a send by TestClient within

[issue5661] asyncore should catch EPIPE while sending() and receiving()

2011-10-29 Thread Roundup Robot
Roundup Robot added the comment: New changeset 507dfb0ceb3b by Charles-François Natali in branch 'default': Issue #5661: on EPIPE/ECONNRESET, OS X returns the FD with the POLLPRI flag... http://hg.python.org/cpython/rev/507dfb0ceb3b -- ___ Python tra

[issue5661] asyncore should catch EPIPE while sending() and receiving()

2011-10-29 Thread Charles-François Natali
Charles-François Natali added the comment: The test fails on OS X: """ == ERROR: test_handle_close_after_conn_broken (test.test_asyncore.TestAPI_UseIPv4Poll) -

[issue5661] asyncore should catch EPIPE while sending() and receiving()

2011-10-29 Thread Roundup Robot
Roundup Robot added the comment: New changeset bf1c4984d4e5 by Charles-François Natali in branch 'default': Issue #5661: Add a test for ECONNRESET/EPIPE handling to test_asyncore. Patch http://hg.python.org/cpython/rev/bf1c4984d4e5 -- nosy: +python-dev _

[issue5661] asyncore should catch EPIPE while sending() and receiving()

2011-10-27 Thread Charles-François Natali
Charles-François Natali added the comment: >> Did you try with the current branches? > > Yes, the test is pass against the current default and 2.7 branches. > One must remove EPIPE from the asyncore._DISCONNECTED frozenset to > make the test to fail. OK. Then I'll add this test to test_asyncore

[issue5661] asyncore should catch EPIPE while sending() and receiving()

2011-10-27 Thread Xavier de Gaye
Xavier de Gaye added the comment: > Did you try with the current branches? Yes, the test is pass against the current default and 2.7 branches. One must remove EPIPE from the asyncore._DISCONNECTED frozenset to make the test to fail. > Yes, see RFC1122 section 4.2.2.13: > """ > A h

[issue5661] asyncore should catch EPIPE while sending() and receiving()

2011-10-27 Thread Charles-François Natali
Charles-François Natali added the comment: Did you try with the current branches? AFAICT, this should have been solved by 208a5290fd38 (issue #11265), and I did a quick test with default and it seems to be fixed. In any case, it's probably a good idea to add this test to test_asyncore. > So it

[issue5661] asyncore should catch EPIPE while sending() and receiving()

2011-10-27 Thread STINNER Victor
Changes by STINNER Victor : -- nosy: +haypo ___ Python tracker ___ ___ Python-bugs-list mailing list Unsubscribe: http://mail.python.o

[issue5661] asyncore should catch EPIPE while sending() and receiving()

2011-10-27 Thread Xavier de Gaye
Xavier de Gaye added the comment: Uploaded the same test case for Python 2.7. -- Added file: http://bugs.python.org/file23534/epipe-2.7.patch ___ Python tracker ___ _

[issue5661] asyncore should catch EPIPE while sending() and receiving()

2011-10-27 Thread Xavier de Gaye
Xavier de Gaye added the comment: Uploaded the patch 'epipe-default.patch' with a test case that breaks on linux when EPIPE is not handled by asyncore, which is the case with Python 3.2 and previous versions. -- Added file: http://bugs.python.org/file23533/epipe-default.patch _

[issue5661] asyncore should catch EPIPE while sending() and receiving()

2011-10-26 Thread Xavier de Gaye
Xavier de Gaye added the comment: > I am not marking 'test needed' since the problem is 'hardly reproducible'. The attached script named 'asyncore_epipe.py' may be used to reproduce systematically the EPIPE error on linux with Python 3.2: * the Reader closes the socket after receiving the

[issue5661] asyncore should catch EPIPE while sending() and receiving()

2011-06-26 Thread Terry J. Reedy
Terry J. Reedy added the comment: I am not marking 'test needed' since the problem is 'hardly reproducible'. -- nosy: +stutzbach, terry.reedy -josiah.carlson stage: -> patch review versions: +Python 3.2, Python 3.3 -Python 2.6, Python 3.0, Python 3.1 __

[issue5661] asyncore should catch EPIPE while sending() and receiving()

2009-04-01 Thread Josiah Carlson
Josiah Carlson added the comment: I think that catching one more potential failure modes is reasonable. I'm probably going to apply a variant of this patch to pull the sequence into a frozenset for quick lookups, and so that we don't need to keep updating two different places if/when new fai

[issue5661] asyncore should catch EPIPE while sending() and receiving()

2009-04-01 Thread Giampaolo Rodola'
New submission from Giampaolo Rodola' : I received a report from a pyftpdlib user: http://code.google.com/p/pyftpdlib/issues/detail?id=104 ...complaining that an unhandled EPIPE error might be thrown by asyncore.py on OS X in certain circumstances which are hardly reproducible. By googling a lit