From: "usa (Usaku NAKAMURA)" Date: 2012-08-20T11:21:30+09:00 Subject: [ruby-dev:46059] [ruby-trunk - Bug #6882][Assigned] parallel test crashes when unknown exception is occured in a test Issue #6882 has been updated by usa (Usaku NAKAMURA). Status changed from Closed to Assigned これっぽっちも直ってないのでreopen ---------------------------------------- Bug #6882: parallel test crashes when unknown exception is occured in a test https://bugs.ruby-lang.org/issues/6882#change-28935 Author: usa (Usaku NAKAMURA) Status: Assigned Priority: Normal Assignee: sorah (Shota Fukumori) Category: lib Target version: 2.0.0 ruby -v: ruby 2.0.0dev (2012-08-16 trunk 36711) test-allを-j付きで実行していると、例えばrdocあたりがバグっていて RDoc::Errorあたりでテストに失敗した場合、masterはRDoc::Errorという 例外を知らないわけですが、にもかかわらずMarshal.loadしようとするので master自体がクラッシュしてしまいます。 worker側からは、masterが知ってる例外が何かを知る方法はおそらくないので、 全てのエラー時の例外を適当にラップして渡すか、そもそも例外をMashal.dump するのをやめるか、のいずれかの方法しかないような気がします。 後者は大変めんどくさいのですが、前者はやってみたらできたのでパッチを 添付します。 実際のレポート表示に使われるメッセージは例外オブジェクトから組み立ててる わけじゃなくてworker側のメッセージを利用してるようなので、この程度で問題 なさそうに見えます。 -- http://bugs.ruby-lang.org/