From: "xtkoba (Tee KOBAYASHI)" Date: 2021-09-13T13:10:44+00:00 Subject: [ruby-core:105219] [Ruby master Bug#17878] bootstraptest/test_ractor.rb:224 a random failing test with "The outgoing-port is already closed (Ractor::ClosedError)" Issue #17878 has been updated by xtkoba (Tee KOBAYASHI). Also observed in ArchLinux CI: http://rubyci.s3.amazonaws.com/arch/ruby-master/log/20210913T120007Z.log.html.gz ---------------------------------------- Bug #17878: bootstraptest/test_ractor.rb:224 a random failing test with "The outgoing-port is already closed (Ractor::ClosedError)" https://bugs.ruby-lang.org/issues/17878#change-93626 * Author: jaruga (Jun Aruga) * Status: Open * Priority: Normal * Backport: 2.6: UNKNOWN, 2.7: UNKNOWN, 3.0: UNKNOWN ---------------------------------------- I was running Travis several times I am trying to revive based on the master commit: `50a534a1526e2b9f4ea41e44b802bd73f9cebbeb`. Then I got the following failure on Travis arm64 Ubuntu focal environment. The failure happened for the first time in around 5 times. Here is the Travis log. https://travis-ci.com/github/junaruga/ruby/jobs/506885939#L2227 ``` $ $SETARCH make -s test -o showflags TESTOPTS="${TESTOPTS=-j33 -q --tty=no}" ... test_ractor.rb ....................Fstderr output is not empty :345:in `select': The outgoing-port is already closed (Ractor::ClosedError) from bootstraptest.tmp.rb:12:in `block in test' from bootstraptest.tmp.rb:11:in `times' from bootstraptest.tmp.rb:11:in `test' from bootstraptest.tmp.rb:26:in `block in
' from bootstraptest.tmp.rb:25:in `times' from bootstraptest.tmp.rb:25:in `each' from bootstraptest.tmp.rb:25:in `map' from bootstraptest.tmp.rb:25:in `
' ``` ``` Fiber count: 10000 (skipping) #1213 test_ractor.rb:224:in `': def test n rs = (1..n).map do |i| Ractor.new(i) do |i| "r#{i}" end end as = [] all_rs = rs.dup n.times{ r, obj = Ractor.select(*rs) as << [r, obj] rs.delete(r) } if as.map{|r, o| r.object_id}.sort == all_rs.map{|r| r.object_id}.sort && as.map{|r, o| o}.sort == (1..n).map{|i| "r#{i}"}.sort 'ok' else 'ng' end end 30.times.map{|i| test i } #=> "" (expected "[\"ok\", \"ok\", \"ok\", \"ok\", \"ok\", \"ok\", \"ok\", \"ok\", \"ok\", \"ok\", \"ok\", \"ok\", \"ok\", \"ok\", \"ok\", \"ok\", \"ok\", \"ok\", \"ok\", \"ok\", \"ok\", \"ok\", \"ok\", \"ok\", \"ok\", \"ok\", \"ok\", \"ok\", \"ok\", \"ok\"]") FAIL 1/1488 tests failed make: *** [uncommon.mk:768: yes-btest-ruby] Error 1 The command "$SETARCH make -s test -o showflags TESTOPTS="${TESTOPTS=$JOBS -q --tty=no}"" exited with 2. ``` -- https://bugs.ruby-lang.org/ Unsubscribe: