Message 183755 - Python tracker
A much larger patch which should address all issues is in attachment. Updates: - use poll() instead of select() whenever possible - take socket timeout into account - take SSL/FTPS into account - when using select() look for EMFILE in case num fds > FD_SETSIZE - look for (AttributeError, io.UnsupportedOperation) when invoking file.fileno() instead of Exception, which seemed too general