Hi,

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.

/opt/csw/lib/ruby/1.8/drb/drb.rb:944:in `accept': Too many open files
(Errno::EMFILE)
        from /opt/csw/lib/ruby/1.8/drb/drb.rb:944:in `accept'
        from /opt/csw/lib/ruby/1.8/drb/drb.rb:1581:in `main_loop'
        from /opt/csw/lib/ruby/1.8/drb/drb.rb:1430:in `run'
        from /opt/csw/lib/ruby/1.8/drb/drb.rb:1427:in `start'
        from /opt/csw/lib/ruby/1.8/drb/drb.rb:1427:in `run'
        from /opt/csw/lib/ruby/1.8/drb/drb.rb:1347:in `initialize'
        from /opt/csw/lib/ruby/1.8/drb/drb.rb:1627:in `new'
        from /opt/csw/lib/ruby/1.8/drb/drb.rb:1627:in `start_service'
        from ./tuple_space.sh:10


I also tried this test both in OSX and Solaris:

 255.times {a<<File.open("/etc/hosts")}

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
still throws:

Errno::EMFILE: Too many open files - /etc/hosts
        from (irb):17:in `initialize'
        from (irb):17:in `open'
        from (irb):17
        from (irb):17:in `times'
        from (irb):17


Anyone has any insight on how to get Solaris to open more than 256
files?

Thanks in advance.