drb icon indicating copy to clipboard operation
drb copied to clipboard

Failures in test suite running on TruffleRuby

Open eregon opened this issue 9 months ago • 0 comments

Many are similar to https://github.com/ruby/drb/issues/36. I ran on truffleruby-dev: truffleruby 25.0.0-dev-fdf602f3, like ruby 3.3.7, GraalVM CE Native [x86_64-linux]

$ bundle exec rake
Loaded suite vendor/bundle/truffleruby/3.3.7.3/gems/rake-13.2.1/lib/rake/rake_test_loader
Started
E
==============================================================================================================================
Error: test_bug16634(DRbTests::TestBug16634): ArgumentError: wrong number of arguments (given 1, expected 0)
(druby://localhost:39385) test/drb/ut_drb.rb:151:in `keyword_test1'
(druby://localhost:39385) lib/drb/drb.rb:1713:in `perform_without_block'
(druby://localhost:39385) lib/drb/drb.rb:1669:in `perform'
(druby://localhost:39385) lib/drb/drb.rb:1758:in `block (2 levels) in main_loop'
(druby://localhost:39385) <internal:core> core/kernel.rb:417:in `loop'
(druby://localhost:39385) lib/drb/drb.rb:1754:in `block in main_loop'
test/drb/test_drb.rb:364:in `test_bug16634'
vendor/bundle/truffleruby/3.3.7.3/gems/test-unit-3.6.8/lib/test/unit/ui/console/testrunner.rb:324: warning: too many arguments for format string
     361:   end
     362: 
     363:   def test_bug16634
  => 364:     assert_equal(42, @there.keyword_test1(a: 42))
     365:     assert_equal("default", @there.keyword_test2)
     366:     assert_equal(42, @there.keyword_test2(b: 42))
     367:     assert_equal({:a=>42, :b=>42}, @there.keyword_test3(a: 42, b: 42))
<internal:core> core/throw_catch.rb:36:in `catch'
<internal:core> core/throw_catch.rb:36:in `catch'
==============================================================================================================================
E
==============================================================================================================================
Error: test_05_break(DRbTests::TestDRbAry): DRb::DRbConnError: connection closed
lib/drb/drb.rb:613:in `load'
lib/drb/drb.rb:668:in `recv_reply'
lib/drb/drb.rb:970:in `recv_reply'
lib/drb/drb.rb:1353:in `send_message'
lib/drb/drb.rb:1172:in `block (2 levels) in method_missing'
lib/drb/drb.rb:1331:in `open'
lib/drb/drb.rb:1171:in `block in method_missing'
lib/drb/drb.rb:1190:in `with_friend'
lib/drb/drb.rb:1170:in `method_missing'
test/drb/drbtest.rb:366:in `test_05_break'
     363: 
     364:   def test_05_break
     365:     ary = []
  => 366:     @there.each do |x|
     367:       ary.push x
     368:       break if x == 4
     369:     end
<internal:core> core/throw_catch.rb:36:in `catch'
<internal:core> core/throw_catch.rb:36:in `catch'
==============================================================================================================================
E
==============================================================================================================================
Error: test_07_break_18(DRbTests::TestDRbAry): DRb::DRbConnError: connection closed
lib/drb/drb.rb:613:in `load'
lib/drb/drb.rb:668:in `recv_reply'
lib/drb/drb.rb:970:in `recv_reply'
lib/drb/drb.rb:1353:in `send_message'
lib/drb/drb.rb:1172:in `block (2 levels) in method_missing'
lib/drb/drb.rb:1331:in `open'
lib/drb/drb.rb:1171:in `block in method_missing'
lib/drb/drb.rb:1190:in `with_friend'
lib/drb/drb.rb:1170:in `method_missing'
(eval):3:in `test_07_break_18'
<internal:core> core/throw_catch.rb:36:in `catch'
<internal:core> core/throw_catch.rb:36:in `catch'
==============================================================================================================================
F
==============================================================================================================================
Failure: test_02_unknown(DRbTests::TestDRbCore)
test/drb/drbtest.rb:177:in `test_02_unknown'
     174: 
     175:     obj = @there.unknown_module
     176:     assert_kind_of(DRb::DRbUnknown, obj)
  => 177:     assert_equal('DRbTests::DRbEx::', obj.name)
     178: 
     179:     assert_raise(DRb::DRbUnknownError) do
     180:       @there.unknown_error
<internal:core> core/throw_catch.rb:36:in `catch'
<internal:core> core/throw_catch.rb:36:in `catch'
<"DRbTests::DRbEx::"> expected but was
<"DRbTests::DRbEx::FooBar">

diff:
? DRbTests::DRbEx::FooBar
==============================================================================================================================
F
==============================================================================================================================
Failure: test_06_timeout(DRbTests::TestDRbCore): [Timeout::Error] exception expected, not #<DRb::DRbConnError: execution expired>.
vendor/bundle/truffleruby/3.3.7.3/bundler/gems/test-unit-ruby-core-04bbdf8d1f83/lib/core_assertions.rb:454:in `block in assert_raise'
vendor/bundle/truffleruby/3.3.7.3/bundler/gems/test-unit-ruby-core-04bbdf8d1f83/lib/core_assertions.rb:540:in `assert'
vendor/bundle/truffleruby/3.3.7.3/bundler/gems/test-unit-ruby-core-04bbdf8d1f83/lib/core_assertions.rb:453:in `assert_raise'
test/drb/drbtest.rb:224:in `block in test_06_timeout'
     221:     omit if defined?(RubyVM::RJIT) && RubyVM::RJIT.enabled? # expecting a certain delay is difficult for --jit-wait CI
     222:     Timeout.timeout(60) do
     223:       ten = Onecky.new(10)
  => 224:       assert_raise(Timeout::Error) do
     225:         @there.do_timeout(ten)
     226:       end
     227:       assert_raise(Timeout::Error) do
/home/eregon/.rubies/truffleruby-dev/lib/truffle/timeout.rb:165:in `timeout'
test/drb/drbtest.rb:222:in `test_06_timeout'
<internal:core> core/throw_catch.rb:36:in `catch'
<internal:core> core/throw_catch.rb:36:in `catch'
==============================================================================================================================
F
==============================================================================================================================
Failure: test_11_remote_no_method_error(DRbTests::TestDRbCore): [DRb::DRbRemoteError] exception expected, not #<NoMethodError: undefined method `invoke_no_method' for an instance of DRbTests::DRbEx>.
vendor/bundle/truffleruby/3.3.7.3/bundler/gems/test-unit-ruby-core-04bbdf8d1f83/lib/core_assertions.rb:454:in `block in assert_raise'
vendor/bundle/truffleruby/3.3.7.3/bundler/gems/test-unit-ruby-core-04bbdf8d1f83/lib/core_assertions.rb:540:in `assert'
vendor/bundle/truffleruby/3.3.7.3/bundler/gems/test-unit-ruby-core-04bbdf8d1f83/lib/core_assertions.rb:453:in `assert_raise'
test/drb/drbtest.rb:313:in `test_11_remote_no_method_error'
     310:   end
     311: 
     312:   def test_11_remote_no_method_error
  => 313:     assert_raise(DRb::DRbRemoteError) do
     314:       @there.remote_no_method_error
     315:     end
     316:     begin
<internal:core> core/throw_catch.rb:36:in `catch'
<internal:core> core/throw_catch.rb:36:in `catch'
==============================================================================================================================
E
==============================================================================================================================
Error: test_03_large_ary(DRbTests::TestDRbLarge): TypeError: allocator undefined for Thread
(druby://localhost:33881) <internal:core> core/marshal.rb:1386:in `__allocate__'
(druby://localhost:33881) <internal:core> core/marshal.rb:1386:in `allocate'
(druby://localhost:33881) <internal:core> core/marshal.rb:1386:in `construct_object'
(druby://localhost:33881) <internal:core> core/marshal.rb:721:in `construct'
(druby://localhost:33881) <internal:core> core/marshal.rb:828:in `block in construct_array'
(druby://localhost:33881) <internal:core> core/integer.rb:157:in `times'
(druby://localhost:33881) <internal:core> core/marshal.rb:827:in `construct_array'
(druby://localhost:33881) <internal:core> core/marshal.rb:713:in `construct'
(druby://localhost:33881) <internal:core> core/marshal.rb:1532:in `load'
(druby://localhost:33881) lib/drb/drb.rb:626:in `block in load'
(druby://localhost:33881) lib/drb/drb.rb:624:in `synchronize'
(druby://localhost:33881) lib/drb/drb.rb:624:in `load'
(druby://localhost:33881) lib/drb/drb.rb:655:in `block in recv_request'
(druby://localhost:33881) <internal:core> core/integer.rb:157:in `times'
(druby://localhost:33881) lib/drb/drb.rb:654:in `recv_request'
(druby://localhost:33881) lib/drb/drb.rb:960:in `recv_request'
(druby://localhost:33881) lib/drb/drb.rb:1688:in `init_with_client'
(druby://localhost:33881) lib/drb/drb.rb:1700:in `setup_message'
(druby://localhost:33881) lib/drb/drb.rb:1660:in `perform'
(druby://localhost:33881) lib/drb/drb.rb:1758:in `block (2 levels) in main_loop'
(druby://localhost:33881) <internal:core> core/kernel.rb:417:in `loop'
(druby://localhost:33881) lib/drb/drb.rb:1754:in `block in main_loop'
test/drb/test_drb.rb:251:in `test_03_large_ary'
     248: 
     249:   def test_03_large_ary
     250:     ary = [Thread.current] * 10240
  => 251:     assert_equal(10240, @there.size(ary))
     252:   end
     253: 
     254:   def test_04_many_arg
<internal:core> core/throw_catch.rb:36:in `catch'
<internal:core> core/throw_catch.rb:36:in `catch'
==============================================================================================================================
E
==============================================================================================================================
Error: test_05_break(DRbTests::TestDRbSSLAry): DRb::DRbConnError: connection closed
lib/drb/drb.rb:613:in `load'
lib/drb/drb.rb:668:in `recv_reply'
lib/drb/drb.rb:970:in `recv_reply'
lib/drb/drb.rb:1353:in `send_message'
lib/drb/drb.rb:1172:in `block (2 levels) in method_missing'
lib/drb/drb.rb:1331:in `open'
lib/drb/drb.rb:1171:in `block in method_missing'
lib/drb/drb.rb:1190:in `with_friend'
lib/drb/drb.rb:1170:in `method_missing'
test/drb/drbtest.rb:366:in `test_05_break'
     363: 
     364:   def test_05_break
     365:     ary = []
  => 366:     @there.each do |x|
     367:       ary.push x
     368:       break if x == 4
     369:     end
<internal:core> core/throw_catch.rb:36:in `catch'
<internal:core> core/throw_catch.rb:36:in `catch'
==============================================================================================================================
E
==============================================================================================================================
Error: test_07_break_18(DRbTests::TestDRbSSLAry): DRb::DRbConnError: connection closed
lib/drb/drb.rb:613:in `load'
lib/drb/drb.rb:668:in `recv_reply'
lib/drb/drb.rb:970:in `recv_reply'
lib/drb/drb.rb:1353:in `send_message'
lib/drb/drb.rb:1172:in `block (2 levels) in method_missing'
lib/drb/drb.rb:1331:in `open'
lib/drb/drb.rb:1171:in `block in method_missing'
lib/drb/drb.rb:1190:in `with_friend'
lib/drb/drb.rb:1170:in `method_missing'
(eval):3:in `test_07_break_18'
<internal:core> core/throw_catch.rb:36:in `catch'
<internal:core> core/throw_catch.rb:36:in `catch'
==============================================================================================================================
F
==============================================================================================================================
Failure: test_06_timeout(DRbTests::TestDRbSSLCore): [Timeout::Error] exception expected, not #<DRb::DRbConnError: execution expired>.
vendor/bundle/truffleruby/3.3.7.3/bundler/gems/test-unit-ruby-core-04bbdf8d1f83/lib/core_assertions.rb:454:in `block in assert_raise'
vendor/bundle/truffleruby/3.3.7.3/bundler/gems/test-unit-ruby-core-04bbdf8d1f83/lib/core_assertions.rb:540:in `assert'
vendor/bundle/truffleruby/3.3.7.3/bundler/gems/test-unit-ruby-core-04bbdf8d1f83/lib/core_assertions.rb:453:in `assert_raise'
test/drb/drbtest.rb:224:in `block in test_06_timeout'
     221:     omit if defined?(RubyVM::RJIT) && RubyVM::RJIT.enabled? # expecting a certain delay is difficult for --jit-wait CI
     222:     Timeout.timeout(60) do
     223:       ten = Onecky.new(10)
  => 224:       assert_raise(Timeout::Error) do
     225:         @there.do_timeout(ten)
     226:       end
     227:       assert_raise(Timeout::Error) do
/home/eregon/.rubies/truffleruby-dev/lib/truffle/timeout.rb:165:in `timeout'
test/drb/drbtest.rb:222:in `test_06_timeout'
<internal:core> core/throw_catch.rb:36:in `catch'
<internal:core> core/throw_catch.rb:36:in `catch'
==============================================================================================================================
F
==============================================================================================================================
Failure: test_11_remote_no_method_error(DRbTests::TestDRbSSLCore): [DRb::DRbRemoteError] exception expected, not #<NoMethodError: undefined method `invoke_no_method' for an instance of DRbTests::DRbEx>.
vendor/bundle/truffleruby/3.3.7.3/bundler/gems/test-unit-ruby-core-04bbdf8d1f83/lib/core_assertions.rb:454:in `block in assert_raise'
vendor/bundle/truffleruby/3.3.7.3/bundler/gems/test-unit-ruby-core-04bbdf8d1f83/lib/core_assertions.rb:540:in `assert'
vendor/bundle/truffleruby/3.3.7.3/bundler/gems/test-unit-ruby-core-04bbdf8d1f83/lib/core_assertions.rb:453:in `assert_raise'
test/drb/drbtest.rb:313:in `test_11_remote_no_method_error'
     310:   end
     311: 
     312:   def test_11_remote_no_method_error
  => 313:     assert_raise(DRb::DRbRemoteError) do
     314:       @there.remote_no_method_error
     315:     end
     316:     begin
<internal:core> core/throw_catch.rb:36:in `catch'
<internal:core> core/throw_catch.rb:36:in `catch'
==============================================================================================================================
E
==============================================================================================================================
Error: test_05_break(DRbTests::TestDRbSafe1): DRb::DRbConnError: connection closed
lib/drb/drb.rb:613:in `load'
lib/drb/drb.rb:668:in `recv_reply'
lib/drb/drb.rb:970:in `recv_reply'
lib/drb/drb.rb:1353:in `send_message'
lib/drb/drb.rb:1172:in `block (2 levels) in method_missing'
lib/drb/drb.rb:1331:in `open'
lib/drb/drb.rb:1171:in `block in method_missing'
lib/drb/drb.rb:1190:in `with_friend'
lib/drb/drb.rb:1170:in `method_missing'
test/drb/drbtest.rb:366:in `test_05_break'
     363: 
     364:   def test_05_break
     365:     ary = []
  => 366:     @there.each do |x|
     367:       ary.push x
     368:       break if x == 4
     369:     end
<internal:core> core/throw_catch.rb:36:in `catch'
<internal:core> core/throw_catch.rb:36:in `catch'
==============================================================================================================================
E
==============================================================================================================================
Error: test_07_break_18(DRbTests::TestDRbSafe1): DRb::DRbConnError: connection closed
lib/drb/drb.rb:613:in `load'
lib/drb/drb.rb:668:in `recv_reply'
lib/drb/drb.rb:970:in `recv_reply'
lib/drb/drb.rb:1353:in `send_message'
lib/drb/drb.rb:1172:in `block (2 levels) in method_missing'
lib/drb/drb.rb:1331:in `open'
lib/drb/drb.rb:1171:in `block in method_missing'
lib/drb/drb.rb:1190:in `with_friend'
lib/drb/drb.rb:1170:in `method_missing'
(eval):3:in `test_07_break_18'
<internal:core> core/throw_catch.rb:36:in `catch'
<internal:core> core/throw_catch.rb:36:in `catch'
==============================================================================================================================
E
==============================================================================================================================
Error: test_05_break(DRbTests::TestDRbUNIXAry): DRb::DRbConnError: connection closed
lib/drb/drb.rb:613:in `load'
lib/drb/drb.rb:668:in `recv_reply'
lib/drb/drb.rb:970:in `recv_reply'
lib/drb/drb.rb:1353:in `send_message'
lib/drb/drb.rb:1172:in `block (2 levels) in method_missing'
lib/drb/drb.rb:1331:in `open'
lib/drb/drb.rb:1171:in `block in method_missing'
lib/drb/drb.rb:1190:in `with_friend'
lib/drb/drb.rb:1170:in `method_missing'
test/drb/drbtest.rb:366:in `test_05_break'
     363: 
     364:   def test_05_break
     365:     ary = []
  => 366:     @there.each do |x|
     367:       ary.push x
     368:       break if x == 4
     369:     end
<internal:core> core/throw_catch.rb:36:in `catch'
<internal:core> core/throw_catch.rb:36:in `catch'
==============================================================================================================================
E
==============================================================================================================================
Error: test_07_break_18(DRbTests::TestDRbUNIXAry): DRb::DRbConnError: connection closed
lib/drb/drb.rb:613:in `load'
lib/drb/drb.rb:668:in `recv_reply'
lib/drb/drb.rb:970:in `recv_reply'
lib/drb/drb.rb:1353:in `send_message'
lib/drb/drb.rb:1172:in `block (2 levels) in method_missing'
lib/drb/drb.rb:1331:in `open'
lib/drb/drb.rb:1171:in `block in method_missing'
lib/drb/drb.rb:1190:in `with_friend'
lib/drb/drb.rb:1170:in `method_missing'
(eval):3:in `test_07_break_18'
<internal:core> core/throw_catch.rb:36:in `catch'
<internal:core> core/throw_catch.rb:36:in `catch'
==============================================================================================================================
F
==============================================================================================================================
Failure: test_06_timeout(DRbTests::TestDRbUNIXCore): [Timeout::Error] exception expected, not #<DRb::DRbConnError: execution expired>.
vendor/bundle/truffleruby/3.3.7.3/bundler/gems/test-unit-ruby-core-04bbdf8d1f83/lib/core_assertions.rb:454:in `block in assert_raise'
vendor/bundle/truffleruby/3.3.7.3/bundler/gems/test-unit-ruby-core-04bbdf8d1f83/lib/core_assertions.rb:540:in `assert'
vendor/bundle/truffleruby/3.3.7.3/bundler/gems/test-unit-ruby-core-04bbdf8d1f83/lib/core_assertions.rb:453:in `assert_raise'
test/drb/drbtest.rb:224:in `block in test_06_timeout'
     221:     omit if defined?(RubyVM::RJIT) && RubyVM::RJIT.enabled? # expecting a certain delay is difficult for --jit-wait CI
     222:     Timeout.timeout(60) do
     223:       ten = Onecky.new(10)
  => 224:       assert_raise(Timeout::Error) do
     225:         @there.do_timeout(ten)
     226:       end
     227:       assert_raise(Timeout::Error) do
/home/eregon/.rubies/truffleruby-dev/lib/truffle/timeout.rb:165:in `timeout'
test/drb/drbtest.rb:222:in `test_06_timeout'
<internal:core> core/throw_catch.rb:36:in `catch'
<internal:core> core/throw_catch.rb:36:in `catch'
==============================================================================================================================
F
==============================================================================================================================
Failure: test_11_remote_no_method_error(DRbTests::TestDRbUNIXCore): [DRb::DRbRemoteError] exception expected, not #<NoMethodError: undefined method `invoke_no_method' for an instance of DRbTests::DRbEx>.
vendor/bundle/truffleruby/3.3.7.3/bundler/gems/test-unit-ruby-core-04bbdf8d1f83/lib/core_assertions.rb:454:in `block in assert_raise'
vendor/bundle/truffleruby/3.3.7.3/bundler/gems/test-unit-ruby-core-04bbdf8d1f83/lib/core_assertions.rb:540:in `assert'
vendor/bundle/truffleruby/3.3.7.3/bundler/gems/test-unit-ruby-core-04bbdf8d1f83/lib/core_assertions.rb:453:in `assert_raise'
test/drb/drbtest.rb:313:in `test_11_remote_no_method_error'
     310:   end
     311: 
     312:   def test_11_remote_no_method_error
  => 313:     assert_raise(DRb::DRbRemoteError) do
     314:       @there.remote_no_method_error
     315:     end
     316:     begin
<internal:core> core/throw_catch.rb:36:in `catch'
<internal:core> core/throw_catch.rb:36:in `catch'
==============================================================================================================================
E
==============================================================================================================================
Error: test_DRbObject_id_dereference(TestDRbObjectTimerIdConv): ArgumentError: wrong number of arguments (given 1, expected 2)
lib/drb/timeridconv.rb:65:in `define_finalizer'
lib/drb/timeridconv.rb:65:in `on_gc'
lib/drb/timeridconv.rb:58:in `invoke_keeper'
lib/drb/timeridconv.rb:35:in `block in add'
/home/eregon/.rubies/truffleruby-dev/lib/mri/monitor.rb:215:in `mon_synchronize'
lib/drb/timeridconv.rb:31:in `add'
lib/drb/timeridconv.rb:92:in `to_id'
lib/drb/drb.rb:1563:in `to_id'
lib/drb/drb.rb:1889:in `to_id'
lib/drb/drb.rb:1133:in `initialize'
test/drb/test_drbobject.rb:20:in `drb_eq'
test/drb/test_drbobject.rb:25:in `test_DRbObject_id_dereference'
     22:   end
     23: 
     24:   def test_DRbObject_id_dereference
  => 25:     drb_eq(Foo.new)
     26:     drb_eq(Foo)
     27:     drb_eq(File)
     28:     drb_eq(Enumerable)
<internal:core> core/throw_catch.rb:36:in `catch'
<internal:core> core/throw_catch.rb:36:in `catch'
==============================================================================================================================
Finished in 143.951986199 seconds.
------------------------------------------------------------------------------------------------------------------------------
122 tests, 511 assertions, 7 failures, 11 errors, 0 pendings, 0 omissions, 0 notifications
85.2459% passed

eregon avatar Apr 28 '25 10:04 eregon