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 walkhour
Recipients walkhour
Date 2017-07-14.16:44:08
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1500050648.86.0.0379661771518.issue30931@psf.upfronthosting.co.za>
In-reply-to
Content
If a socket is closed and polled here https://github.com/python/cpython/blob/0d0a32fb91cdfea1626e6c6b77a9bc44e15a2b8a/Lib/asyncore.py#L183 the flag returned will be select.POLLNVAL (note that this can happen despite dispatcher.close() being called).

This wouldn't be a problem but before here https://github.com/python/cpython/blob/0d0a32fb91cdfea1626e6c6b77a9bc44e15a2b8a/Lib/asyncore.py#L185 a new socket may be created with the same fd (which wouldn't be strange since that fd is now available), so the retrieved socket will be the newly created one instead of the old one and the new one will be close.

This is regularly happening to us, I could try to explain better, but that's really it.
History
Date User Action Args
2017-07-14 16:44:08walkhoursetrecipients: + walkhour
2017-07-14 16:44:08walkhoursetmessageid: <1500050648.86.0.0379661771518.issue30931@psf.upfronthosting.co.za>
2017-07-14 16:44:08walkhourlinkissue30931 messages
2017-07-14 16:44:08walkhourcreate