From: Koji Arai Date: 2002-02-27T03:35:39+09:00 Subject: [ruby-dev:16130] Re: patch for gdbm, dbm and sdbm 新井です。 In message "[ruby-dev:16126] patch for gdbm, dbm and sdbm" on 27 Feb 2002 03:02:26 +0900, Koji Arai wrote: > 新井です。 > > gdbm, dbm, sdbm のパッチを書きました。(1.7 のみ。1.6 は無視) ところで、今回の修正前からそうだったようなのですが、gdbm の テストは何か不思議な挙動をします。 テストを実行するディレクトリが違うと、テストの実行時間が極端 に変わるのです。 $ ruby -v ruby 1.7.2 (2002-02-22) [i586-linux] $ ls CVS/ MANIFEST README depend extconf.rb gdbm.c testgdbm.rb $ ruby testgdbm.rb TestGDBM#test_aref . TestGDBM#test_aset . 〜略〜 TestGDBM#test_version This is GDBM version 1.7.3, as of May 19, 1994.. Time: 5.435199 OK (42/42 tests 952 asserts) $ mkdir hoge $ cd hoge $ cp ../* . /bin/cp: omitting directory `../CVS' [exit: 1] $ ls MANIFEST README depend extconf.rb gdbm.c testgdbm.rb $ ruby testgdbm.rb TestGDBM#test_aref . TestGDBM#test_aset . 〜略〜 TestGDBM#test_values . TestGDBM#test_version This is GDBM version 1.7.3, as of May 19, 1994.. Time: 31.414184 OK (42/42 tests 952 asserts) 5秒で終るテストが30秒かかるようになってます。testgdbm.rb を /tmp にして テストするとまた速くなったり。不思議。 # rubyunit は、rough のものを使ってます。 $ ruby -I ~/src/ruby/ruby-rough/lib/rubyunit testgdbm.rb TestGDBM#test_version This is GDBM version 1.7.3, as of May 19, 1994.. Time: 27.011137 OK (42/42 tests 952 asserts) どうも、テスト中の setup の GDBM.open が早くなったり遅くなっ たりしてるみたいなんですが。単体でやってみても差がでなかった りでよくわかりません。 こういうときは一日置いてまた考え直すことにしよう。 # きっとくだらない理由に違いない(^^;。 -- 新井康司 (Koji Arai)