Issue #7999 has been updated by kosaki (Motohiro KOSAKI).

Status changed from Open to Assigned
Assignee changed from ko1 (Koichi Sasada) to kosaki (Motohiro KOSAKI)

main thread never exit from rb_threadptr_execute_interrupts() because timer thread wake-up lead to increase t->running_time_us and exhaust thread time slice.
----------------------------------------
Bug #7999: bootstarap test hungs at threading tests
https://bugs.ruby-lang.org/issues/7999#change-37246

Author: ko1 (Koichi Sasada)
Status: Assigned
Priority: Normal
Assignee: kosaki (Motohiro KOSAKI)
Category: core
Target version: current: 2.1.0
ruby -v: ruby 2.1.0dev


On [ruby-list:49232], Ootani-san reported that Ruby 2.0.0p0 hungs on bootstarap test hungs at threading tests.

assert_equal 'true', %{
  t = Thread.new { loop {} }
  begin
    pid = fork {
      exit t.status != "run"
    }
    Process.wait pid
    $?.success?
  rescue NotImplementedError
    true
  end
}

He rewrites to "  t = Thread.new { loop {sleep 1} }" and it work successfully.
His environment is CentOS6.3 and VMware.
He doubts this issue caused only on single-core processor because there is no problem on multi-core VM setting.

I also observed same issue on VirtualBox with Ubuntu. I haven't check yet that it is only on single-core or not.

I want to clarify the reason of this issue.
Please give information about your environment if you have same issue.



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