Project

General

Profile

This project is closed and read-only.

Actions

Backport #8519

closed

Test IO Timeout error and free space starvation

Backport #8519: Test IO Timeout error and free space starvation

Added by luislavena (Luis Lavena) over 13 years ago. Updated about 13 years ago.


Description

=begin
Hello,

As originally mentioned in [ruby-core:55416], a particular test on ruby_2_0_0 branch and trunk is leaving temporary files behind and causing the CI worker to have no free space.

The failing test:

http://ci.rubyinstaller.org/job/ruby-2_0_0-x64-test-all/87/console
http://ci.rubyinstaller.org/job/ruby-trunk-x64-test-all/1371/console

  1. Error:
    TestIO#test_write_32bit_boundary:
    Timeout::Error: Timeout::Error
    C:/Users/Worker/Jenkins/workspace/ruby-trunk-x64-build/test/ruby/envutil.rb:78:in invoke_ruby' C:/Users/Worker/Jenkins/workspace/ruby-trunk-x64-build/test/ruby/envutil.rb:298:in assert_separately'
    C:/Users/Worker/Jenkins/workspace/ruby-trunk-x64-build/test/ruby/test_io.rb:2693:in block in test_write_32bit_boundary' C:/Users/Worker/Jenkins/workspace/ruby-trunk-x64-build/test/ruby/test_io.rb:1247:in make_tempfile'
    C:/Users/Worker/Jenkins/workspace/ruby-trunk-x64-build/test/ruby/test_io.rb:2692:in `test_write_32bit_boundary'

And ruby_2_0_0:

  1. Error:
    test_write_32bit_boundary(TestIO):
    Timeout::Error: Timeout::Error
    C:/Users/Worker/Jenkins/workspace/ruby-2_0_0-x64-build/test/ruby/envutil.rb:77:in invoke_ruby' C:/Users/Worker/Jenkins/workspace/ruby-2_0_0-x64-build/test/ruby/envutil.rb:266:in assert_separately'
    C:/Users/Worker/Jenkins/workspace/ruby-2_0_0-x64-build/test/ruby/test_io.rb:2674:in block in test_write_32bit_boundary' C:/Users/Worker/Jenkins/workspace/ruby-2_0_0-x64-build/test/ruby/test_io.rb:1246:in make_tempfile'
    C:/Users/Worker/Jenkins/workspace/ruby-2_0_0-x64-build/test/ruby/test_io.rb:2673:in `test_write_32bit_boundary'

The test (({test_write_32bit_boundary})) is not properly cleaning up the temporary file it creates.

This was not a problem before and just recently started to happen. It is worth to mention no change in the worker setup has been made except normal Windows security upgrades.

Ideas?
=end

Updated by nobu (Nobuyoshi Nakada) over 13 years ago Actions #1

  • Status changed from Assigned to Closed
  • % Done changed from 0 to 100

This issue was solved with changeset r41254.
Luis, thank you for reporting this issue.
Your contribution to Ruby is greatly appreciated.
May Ruby be with you.


test_io.rb: fix test error

  • test/ruby/test_io.rb (TestIO#test_write_32bit_boundary): retry to
    remove the temporary file while EACCES occurs because of syncing in
    the system probably. rescue ENOSPC from IO#tell. [ruby-core:55457]
    [Bug #8519]

Updated by h.shirosaki (Hiroshi Shirosaki) over 13 years ago Actions #2 [ruby-core:55541]

  • Status changed from Closed to Assigned
  • Assignee changed from windows to nobu (Nobuyoshi Nakada)

test_write_32bit_boundary still fails on CI.

TestIO#test_write_32bit_boundary = 137.43 s = E

http://ci.rubyinstaller.org/job/ruby-trunk-x86-test-all/1566/console

I tried the test on my local Win7 and took about 50s to complete with changing timeout to 60s. And the test creates a 4.2GB temp file.
Since it takes very long time and fails on CI, is it better to skip the test on mingw?

Updated by Anonymous about 13 years ago Actions #3

  • Status changed from Assigned to Closed

This issue was solved with changeset r41655.
Luis, thank you for reporting this issue.
Your contribution to Ruby is greatly appreciated.
May Ruby be with you.


  • test/ruby/test_io.rb (TestIO#test_write_32bit_boundary): skip if
    writing a file is slow.
    [ruby-core:55541] [Bug #8519]

Updated by nagachika (Tomoyuki Chikanaga) about 13 years ago Actions #4

  • Tracker changed from Bug to Backport
  • Project changed from Ruby to 15
  • Category deleted (test)
  • Status changed from Closed to Assigned
  • Assignee changed from nobu (Nobuyoshi Nakada) to nagachika (Tomoyuki Chikanaga)
  • Target version deleted (2.6)

Updated by nagachika (Tomoyuki Chikanaga) about 13 years ago Actions #5

  • Status changed from Assigned to Closed

This issue was solved with changeset r41659.
Luis, thank you for reporting this issue.
Your contribution to Ruby is greatly appreciated.
May Ruby be with you.


merge revision(s) 41254,41655: [Backport #8519]

test_io.rb: fix test error

* test/ruby/test_io.rb (TestIO#test_write_32bit_boundary): retry to

remove the temporary file while EACCES occurs because of syncing in
the system probably. rescue ENOSPC from IO#tell. [ruby-core:55457]
[Bug #8519]
* test/ruby/test_io.rb (TestIO#test_write_32bit_boundary): skip if
writing a file is slow.
[ruby-core:55541] [Bug #8519]

Actions

Also available in: PDF Atom