Denis S. Otkidach <denis.otkid...@gmail.com> added the comment:
Re: msg393586 > See my comment in the PR for a suggestion about an alternative structure for > wait_for, which may avoid this gap and hence prevent the leak (but I have not > tested it!) Unfortunately this didn't close the gap, so the leak persisted. I did some research on the source of the error. There are circular references between instances of _SelectorSocketTransport and _SSLProtocolTransport (see attached image), therefore these objects are destroyed by garbage collector. The order might be arbitrary. When _SelectorSocketTransport is destroyed after _SSLProtocolTransport everything is ok, but with the opposite order we get the error printed. Here is description on how to reproduce this: https://github.com/ods/bpo-37658#circular-references-when-using-ssltls ---------- Added file: https://bugs.python.org/file50061/ssl_circular_refs.png _______________________________________ Python tracker <rep...@bugs.python.org> <https://bugs.python.org/issue37658> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com