[Ruby 1.9 - Bug #5213][Open] GC.stress=true で TestSH#test commercial が Failure になる

Issue #5213 has been reported by Tomoyuki C…


Bug #5213: GC.stress=true で TestSH#test_commercial が Failure になる

Author: Tomoyuki C.
Status: Open
Priority: Normal
Assignee: tadayoshi funaba
Category: ext
Target version: 1.9.x
ruby -v: ruby 1.9.4dev (2011-08-21 trunk 33021) [x86_64-darwin10.8.0]

make test-all TESTS=“–gc-stress date/test_switch_hitter.rb -n
test_commercial”
を実行すると

  1. Failure:
    test_commercial(TestSH)
    [/Users/nagachika/opt/ruby-trunk/src/ruby/test/date/test_switch_hitter.rb:176]:
    <[2001, 2, 3, 4, 5, 6, (3/8)]> expected but was
    <[2001, 2, 3, 4, 5, 6, (0/1)]>.

といったエラーになります。

date_zone_to_diff()
でバッファを利用中の文字列(変数str)を上書きすることがあるためで、添付のパッチで現象は抑制できました。

Issue #5213 has been updated by Tomoyuki C…

File date_parse.c.2.patch added

すみません、valgrind で実行するとその他に str のバッファをはみだしてアクセスする場合があったのでその修正と、RB_GC_GUARD
を使うようにしたのでパッチを更新します。

Bug #5213: GC.stress=true で TestSH#test_commercial が Failure になる

Author: Tomoyuki C.
Status: Open
Priority: Normal
Assignee: tadayoshi funaba
Category: ext
Target version: 1.9.x
ruby -v: ruby 1.9.4dev (2011-08-21 trunk 33021) [x86_64-darwin10.8.0]

make test-all TESTS=“–gc-stress date/test_switch_hitter.rb -n
test_commercial”
を実行すると

  1. Failure:
    test_commercial(TestSH)
    [/Users/nagachika/opt/ruby-trunk/src/ruby/test/date/test_switch_hitter.rb:176]:
    <[2001, 2, 3, 4, 5, 6, (3/8)]> expected but was
    <[2001, 2, 3, 4, 5, 6, (0/1)]>.

といったエラーになります。

date_zone_to_diff()
でバッファを利用中の文字列(変数str)を上書きすることがあるためで、添付のパッチで現象は抑制できました。

Issue #5213 has been updated by tadayoshi funaba.

コミットしておいて下さい。

Bug #5213: GC.stress=true で TestSH#test_commercial が Failure になる

Author: Tomoyuki C.
Status: Open
Priority: Normal
Assignee: tadayoshi funaba
Category: ext
Target version: 1.9.x
ruby -v: ruby 1.9.4dev (2011-08-21 trunk 33021) [x86_64-darwin10.8.0]

make test-all TESTS=“–gc-stress date/test_switch_hitter.rb -n
test_commercial”
を実行すると

  1. Failure:
    test_commercial(TestSH)
    [/Users/nagachika/opt/ruby-trunk/src/ruby/test/date/test_switch_hitter.rb:176]:
    <[2001, 2, 3, 4, 5, 6, (3/8)]> expected but was
    <[2001, 2, 3, 4, 5, 6, (0/1)]>.

といったエラーになります。

date_zone_to_diff()
でバッファを利用中の文字列(変数str)を上書きすることがあるためで、添付のパッチで現象は抑制できました。

Issue #5213 has been updated by Tomoyuki C…

Status changed from Open to Closed

r33106 でコミットしました。

Bug #5213: GC.stress=true で TestSH#test_commercial が Failure になる

Author: Tomoyuki C.
Status: Closed
Priority: Normal
Assignee: tadayoshi funaba
Category: ext
Target version: 1.9.x
ruby -v: ruby 1.9.4dev (2011-08-21 trunk 33021) [x86_64-darwin10.8.0]

make test-all TESTS=“–gc-stress date/test_switch_hitter.rb -n
test_commercial”
を実行すると

  1. Failure:
    test_commercial(TestSH)
    [/Users/nagachika/opt/ruby-trunk/src/ruby/test/date/test_switch_hitter.rb:176]:
    <[2001, 2, 3, 4, 5, 6, (3/8)]> expected but was
    <[2001, 2, 3, 4, 5, 6, (0/1)]>.

といったエラーになります。

date_zone_to_diff()
でバッファを利用中の文字列(変数str)を上書きすることがあるためで、添付のパッチで現象は抑制できました。