[ruby-cvs:71697] nagachika:r64605 (ruby_2_5): merge revision(s) 64007, 64019, 64020: [Backport #14929]

nagachika at ruby-lang.org nagachika at ruby-lang.org
Sat Sep 1 14:40:02 JST 2018


nagachika	2018-09-01 14:40:02 +0900 (Sat, 01 Sep 2018)

  New Revision: 64605

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

  Log:
    merge revision(s) 64007,64019,64020: [Backport #14929]
    
    thread.c (do_select): fix leak on exception
    
    When do_select is interrupted and raise happens from
    RUBY_VM_CHECK_INTS_BLOCKING, the original FD sets we copied
    do not get freed, leading to a memory leak.  Wrap up all the
    FD sets into a Ruby object to ensure the GC can release an
    allocations made for rb_fdset_t.
    
    This leak existed since Ruby 2.0.0 (r36430)
    
    [Bug #14929]
    
    increase timeout seconds.
    * test/ruby/test_io.rb (test_select_leak): increase timeout seconds
      to pass this test on a high-load machine.
    
    
    60 sec is not enough at all

  Modified directories:
    branches/ruby_2_5/
  Modified files:
    branches/ruby_2_5/test/ruby/test_io.rb
    branches/ruby_2_5/thread.c
    branches/ruby_2_5/version.h


More information about the ruby-cvs mailing list