Issue #8770 has been updated by Eric Wong.


 nobu / ruby-lang.org wrote:
 > Is it an issue of the test code?
 > 
 > http://c5664.rubyci.org/~chkbuild/ruby-trunk/log/20140125T233302Z.log.html.gz
 
 Odd, I did not get this:
 
  10) Error:
 TestProcess#test_deadlock_by_signal_at_forking:
 Errno::EINTR: Interrupted system call - /home/chkbuild/build/20140125T233302Z/ruby/ruby
     /home/chkbuild/build/20140125T233302Z/ruby/test/ruby/test_process.rb:1875:in `popen'
     /home/chkbuild/build/20140125T233302Z/ruby/test/ruby/test_process.rb:1875:in `block in test_deadlock_by_signal_at_forking'
     /home/chkbuild/build/20140125T233302Z/ruby/test/ruby/test_process.rb:1873:in `times'
     /home/chkbuild/build/20140125T233302Z/ruby/test/ruby/test_process.rb:1873:in `test_deadlock_by_signal_at_forking'
 
 Instead, I got this (with TESTS=-j32):
 
 /home/ew/ruby/test/ruby/test_process.rb:15:in `waitall': SIGTERM (SignalException)
         /home/ew/ruby/test/ruby/test_process.rb:15:in `teardown'
         /home/ew/ruby/lib/minitest/unit.rb:1280:in `block in run'
 
 I don't think I was able to reproduce it on a single-threaded test-all.

----------------------------------------
Bug #8770: [PATCH] process.c: avoid EINTR from Process.spawn
https://bugs.ruby-lang.org/issues/8770#change-44603

* Author: Eric Wong
* Status: Closed
* Priority: Normal
* Assignee: Nobuyoshi Nakada
* Category: core
* Target version: 2.1.0
* ruby -v: ruby 2.1.0dev (2013-08-10 trunk 42491) [x86_64-linux]
* Backport: 1.9.3: REQUIRED, 2.0.0: REQUIRED, 2.1: REQUIRED
----------------------------------------
(send_child_error): retry write on EINTR
(recv_child_error): retry read on EINTR

I've been getting occasional Errno::EINTR from Process.spawn with
just the prog name in the error message.  This is probably the cause
of it, as I haven't been able to get a consistent reproduction of
the Errno::EINTR.

I've been hitting this on 2.0.0-p247, so it probably needs backport.

---Files--------------------------------
0001-process.c-avoid-EINTR-from-Process.spawn.patch (3.18 KB)


-- 
http://bugs.ruby-lang.org/