Bug #4434
closedmake test-all "-j10000" のように大きな並列数を与えると異常終了
Description
=begin
% make test-all TESTS="-j10000"
./miniruby -I./lib -I. -I.ext/common ./tool/runruby.rb --extout=.ext -- "./test/runner.rb" -j10000
Run options: -j10000
Running tests:¶
[FATAL] Failed to create timer thread (errno: 11)
[FATAL] Failed to create timer thread (errno: 11)
make: *** [yes-test-all] Error 1
/home/kosaki/linux/ruby-svn/ruby/lib/test/unit/parallel.rb:74:in write': Broken pipe - <STDOUT> (Errno::EPIPE) from /home/kosaki/linux/ruby-svn/ruby/lib/test/unit/parallel.rb:74:in
puts'
from /home/kosaki/linux/ruby-svn/ruby/lib/test/unit/parallel.rb:74:in run' from /home/kosaki/linux/ruby-svn/ruby/lib/test/unit/parallel.rb:139:in
'
/home/kosaki/linux/ruby-svn/ruby/lib/test/unit/parallel.rb:74:in write': Broken pipe - <STDOUT> (Errno::EPIPE) from /home/kosaki/linux/ruby-svn/ruby/lib/test/unit/parallel.rb:74:in
puts'
from /home/kosaki/linux/ruby-svn/ruby/lib/test/unit/parallel.rb:74:in run' from /home/kosaki/linux/ruby-svn/ruby/lib/test/unit/parallel.rb:139:in
'
/home/kosaki/linux/ruby-svn/ruby/lib/test/unit/parallel.rb:74:in write': Broken pipe - <STDOUT> (Errno::EPIPE) from /home/kosaki/linux/ruby-svn/ruby/lib/test/unit/parallel.rb:74:in
puts'
from /home/kosaki/linux/ruby-svn/ruby/lib/test/unit/parallel.rb:74:in run' from /home/kosaki/linux/ruby-svn/ruby/lib/test/unit/parallel.rb:139:in
'
/home/kosaki/linux/ruby-svn/ruby/lib/test/unit/parallel.rb:74:in write': Broken pipe - <STDOUT> (Errno::EPIPE) from /home/kosaki/linux/ruby-svn/ruby/lib/test/unit/parallel.rb:74:in
puts'
from /home/kosaki/linux/ruby-svn/ruby/lib/test/unit/parallel.rb:74:in run' from /home/kosaki/linux/ruby-svn/ruby/lib/test/unit/parallel.rb:139:in
'
/home/kosaki/linux/ruby-svn/ruby/lib/test/unit/parallel.rb:74:in write': Broken pipe - <STDOUT> (Errno::EPIPE) from /home/kosaki/linux/ruby-svn/ruby/lib/test/unit/parallel.rb:74:in
puts'
from /home/kosaki/linux/ruby-svn/ruby/lib/test/unit/parallel.rb:74:in run' from /home/kosaki/linux/ruby-svn/ruby/lib/test/unit/parallel.rb:139:in
'
/home/kosaki/linux/ruby-svn/ruby/lib/test/unit/parallel.rb:74:in write': Broken pipe - <STDOUT> (Errno::EPIPE) from /home/kosaki/linux/ruby-svn/ruby/lib/test/unit/parallel.rb:74:in
puts'
from /home/kosaki/linux/ruby-svn/ruby/lib/test/unit/parallel.rb:74:in run' from /home/kosaki/linux/ruby-svn/ruby/lib/test/unit/parallel.rb:139:in
'
/home/kosaki/linux/ruby-svn/ruby/lib/test/unit/parallel.rb:74:in write': Broken pipe - <STDOUT> (Errno::EPIPE) from /home/kosaki/linux/ruby-svn/ruby/lib/test/unit/parallel.rb:74:in
puts'
from /home/kosaki/linux/ruby-svn/ruby/lib/test/unit/parallel.rb:74:in run' from /home/kosaki/linux/ruby-svn/ruby/lib/test/unit/parallel.rb:139:in
'
/home/kosaki/linux/ruby-svn/ruby/lib/test/unit/parallel.rb:74:in write': Broken pipe - <STDOUT> (Errno::EPIPE) from /home/kosaki/linux/ruby-svn/ruby/lib/test/unit/parallel.rb:74:in
puts'
from /home/kosaki/linux/ruby-svn/ruby/lib/test/unit/parallel.rb:74:in run' from /home/kosaki/linux/ruby-svn/ruby/lib/test/unit/parallel.rb:139:in
'
=end
Updated by sorah (Sorah Fukumori) about 14 years ago
- Category changed from test to lib
Updated by ko1 (Koichi Sasada) almost 14 years ago
この問題はどうなっていますでしょうか.
Updated by sorah (Sorah Fukumori) about 13 years ago
- Status changed from Assigned to Feedback
r34968 の変更で IO.popen による worker プロセスの起動に失敗した時に
ERROR: Failed to launch job process - Errno::EMFILE: Too many open files - ./miniruby
と表示されるようになったので make test-all TESTS="-j10000" で現在チケットに書いてあるような
分かりにくい異常終了の仕方にはなってないのですが問題無いでしょうか。
(-j10000 は手元の環境じゃ too many open files になるというのもあり、引き続き再現するか不明
なので一旦 feedback にします)
Updated by kosaki (Motohiro KOSAKI) about 13 years ago
Too many open files を出してるのがマネージャープロセスなら、しょうがないんじゃない。それはRLIMIT上げればいいんだし。
workerプロセスが出してるなら問題で、それはfdリークを意味してるので -j の数によってテストが変わってしまう可能性があるのでよくないよね。
Updated by mame (Yusuke Endoh) about 12 years ago
- Target version changed from 2.0.0 to 2.6
テストの問題に過ぎない (ですよね?) ので先送り。
--
Yusuke Endoh mame@tsg.ne.jp