I have a ruby / DRb process that is quiting with Errno::EMFILE every
time it reaches 256 connections. This happens regardless of what I set
in ulimit -n and only on Solaris.
accept': Too many open files (Errno::EMFILE) from /opt/csw/lib/ruby/1.8/drb/drb.rb:944:inaccept’
main_loop' from /opt/csw/lib/ruby/1.8/drb/drb.rb:1430:inrun’
start' from /opt/csw/lib/ruby/1.8/drb/drb.rb:1427:inrun’
initialize' from /opt/csw/lib/ruby/1.8/drb/drb.rb:1627:innew’
from /opt/csw/lib/ruby/1.8/drb/drb.rb:1627:in `start_service’
I also tried this test both in OSX and Solaris:
and I got it working on OSX with a ulimit -n 2048 but it seems that
Ruby on Solaris does not change its behavior based on ulimit -n and it
Errno::EMFILE: Too many open files - /etc/hosts
initialize' from (irb):17:inopen’
from (irb):17:in `times’
Anyone has any insight on how to get Solaris to open more than 256
Thanks in advance.