[email protected] wrote: > Strange error which took down my server today: > > Unhandled listen loop exception #<Errno::EMFILE: Too many open files - > accept>. > ... > > My unicorn.stderr.log is 7.6GB, and I rotate it every day... > > Before all that started I got: > > Read error: #<IOError: closed stream> > /usr/local/ruby-enterprise-1.8.7-2010.01/lib/ruby/gems/1.8/gems/unicorn-3.3.1/lib/unicorn/http_response.rb:37:in > > But the servers seemed to be basically operating at that point.
Weird. I have many questions: Are you processing uploads at all? Is nginx in front of Unicorn? Do you open a lot of files in your application and never close them?[1] How does lsof output look for your workers? Can you check any exception capturing/logging middleware you have for any other errors that may be swallowed? (especially while reading env["rack.input"]) I changed the socket close ordering for 3.3.1 to workaround an esoteric "bug", but I don't see how this could happen right now... Does this happen with 3.3.0? Or 1.1.6? hiswhich has the same "bugfix" as 3.3.1. Also, is anybody else having this problem? [1] - GC should be able to cleanup open files on MRI/REE anyways -- Eric Wong _______________________________________________ Unicorn mailing list - [email protected] http://rubyforge.org/mailman/listinfo/mongrel-unicorn Do not quote signatures (like this one) or top post when replying
