[ruby-cvs:67875] mame:r60694 (trunk): Symptomatic treatment for `rb_thread_terminate_all` freeze

mame at ruby-lang.org mame at ruby-lang.org
Tue Nov 7 15:36:08 JST 2017


mame	2017-11-07 15:36:07 +0900 (Tue, 07 Nov 2017)

  New Revision: 60694

  https://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=revision&revision=60694

  Log:
    Symptomatic treatment for `rb_thread_terminate_all` freeze
    
    Under uncertain condition, `rb_thread_terminate_all` gets stuck.  `make
    test-all TESTOPTS="test/ruby/test_gc.rb -n test_interrupt_in_finalizer`
    fails very rarely (only once every thousand runs).  This IS a bug, but
    seems difficult to fix it soon.
    
    This commit makes `rb_thread_terminate_all` wake up every one second,
    instead of waiting forever, which mitigates the unuseful freeze.
    This is not an essential solution for the bug, though.  I'll create a
    ticket with how to reproduce the original issue.

  Modified files:
    trunk/thread.c


More information about the ruby-cvs mailing list