[Twisted-Python] too many file descriptors in select

Itamar Shtull-Trauring itamar at itamarst.org
Tue Mar 3 12:24:24 EST 2009

John Aherne wrote:
> I have started to get this message coming up on a fairly regular basis 
> now.
> I have an application that is very simple and has run by and large 
> without problem for about 7 months. But over the pas 4 - 6 weeks has 
> started to produce this error 'too many file descriptors in select'. 
> The application basically falls over at this point, since it can't 
> service any more requests.
Assuming that you've made sure you aren't leaking any connections, you 
are still faced with the problem of that the select module on Windows is 
limited to 512 file descriptors. Your options:

1. Switch to Linux, where you can use other reactors with a much higher 
limit, e.g. epoll.
2. Use the IOCP reactor on Windows, which isn't as well tested and is 
missing some features, in particular SSL support.
3. Recompile the select module on Windows with a higher limit; basically 
it's some C constant you redefine, it's probably right at the top of the 
file. You just get the Python tarball, and rebuild the appropriate 
module (or everything and just extract the appropriate PYD).

-Itamar, still living the voice-recognition life

More information about the Twisted-Python mailing list