From: Masatoshi SEKI Date: 2010-06-02T23:23:33+09:00 Subject: [ruby-dev:41515] Re: [Bug #3370] test failure of drb 咳といいます。 On 2010/06/02, at 17:02, U.Nakamura wrote: > こんにちは、なかむら(う)です。 > > In message "[ruby-dev:41505] Re: [Bug #3370] test failure of drb" > on Jun.02,2010 09:13:49, wrote: >>> 安定していつも失敗しますか? >> >> 私の手元では再現率100%です。 >> 環境に依存する可能性はありますが、まだ確認できていません。 > > 100%だと思っていたのですが、稀に成功することがあるということ > を今発見しました! > > タイミング、ですかね? えと、私も出す方法がわかりました。 結論から言うと、DRbConnErrorがいつも返るように変更したいかも。 次のように変更すると再現させられます。 おそらく、クライアントが要求を全て送りきる前にサーバが 上限をチェックして、エラーを返し、切断するケースで クライアントがwriteに失敗してDRbConnErrorになる予感。 もうちょっと調べます。 Index: test_drb.rb =================================================================== --- test_drb.rb (revision 28118) +++ test_drb.rb (working copy) @@ -284,6 +284,8 @@ def test_04_many_arg assert_raise(ArgumentError) { + arg = Array.new(2000) + @there.arg_test(*arg) @there.arg_test(1, 2, 3, 4, 5, 6, 7, 8, 9, 0) } end