homepage

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.

classification
Title: Cygwin: asyncio and asyncore test suites hang indefinitely due to bug in Cygwin
Type: crash Stage: resolved
Components: Versions:
process
Status: closed Resolution: wont fix
Dependencies: Superseder: Cygwin is unsupported - close all open issues and list them here.
View: 45537
Assigned To: Nosy List: erik.bray, iritkatriel
Priority: normal Keywords: patch

Created on 2017年10月27日 13:08 by erik.bray, last changed 2022年04月11日 14:58 by admin. This issue is now closed.

Pull Requests
URL Status Linked Edit
PR 4149 closed erik.bray, 2017年10月27日 13:12
Messages (5)
msg305118 - (view) Author: Erik Bray (erik.bray) * (Python triager) Date: 2017年10月27日 13:08
Some of the tests for asyncio and asyncore block forever on Cygwin, due to a known (and seemingly difficult to fix) bug [1] in Cygwin involving SO_PEERCRED on UNIX sockets.
SO_PEERCRED is a socket option that can be used to exchange file ownership info of the socket at the time the connection was established (specifically on UNIX sockets). This feature is technically supported on Cygwin, but the effect of the bug is that if two sockets are opened on the same process (even without using socketpair()), the credential exchange protocol can cause connect() on the "client" socket to block unless the "server" socket is already listen()-ing.
This situation is not all that common in practice (it is not a problem if the "client" and "server" are separate processes). But it does show up in the test suite in a number of places, since both sockets belong to the same process.
I have a patch to work around this and will post a PR shortly.
[1] https://cygwin.com/ml/cygwin/2017-01/msg00054.html 
msg321947 - (view) Author: Erik Bray (erik.bray) * (Python triager) Date: 2018年07月19日 10:33
I originally opened this in https://bugs.python.org/issue29253 but then made a dupe of my own bug! Anyways, there's a (nearly year old) pull request for it now.
msg404298 - (view) Author: Irit Katriel (iritkatriel) * (Python committer) Date: 2021年10月19日 13:36
See discussion on issue31885.
msg404303 - (view) Author: Erik Bray (erik.bray) * (Python triager) Date: 2021年10月19日 13:49
To my knowledge this issue is *not* fixed upstream. However, my PR no doubt needs rebasing.
msg404305 - (view) Author: Irit Katriel (iritkatriel) * (Python committer) Date: 2021年10月19日 13:52
Sorry I thought this was the same issue. 
Note that asyncore is deprecated now.
History
Date User Action Args
2022年04月11日 14:58:53adminsetgithub: 76063
2021年10月21日 09:57:35iritkatrielsetresolution: duplicate -> wont fix
2021年10月20日 12:06:19iritkatrielsetstatus: open -> closed
resolution: duplicate
superseder: Cygwin is unsupported - close all open issues and list them here.
2021年10月19日 13:52:59iritkatrielsetstatus: closed -> open
resolution: out of date -> (no value)
messages: + msg404305
2021年10月19日 13:49:49erik.braysetmessages: + msg404303
2021年10月19日 13:36:24iritkatrielsetstatus: open -> closed

nosy: + iritkatriel
messages: + msg404298

resolution: out of date
stage: patch review -> resolved
2018年07月19日 10:57:47martin.panterlinkissue29253 superseder
2018年07月19日 10:33:29erik.braysetmessages: + msg321947
2017年10月27日 13:12:33erik.braysetkeywords: + patch
stage: patch review
pull_requests: + pull_request4115
2017年10月27日 13:08:09erik.braycreate

AltStyle によって変換されたページ (->オリジナル) /