https://bugs.ruby-lang.org/
https://bugs.ruby-lang.org/favicon.ico?1711330511
2011-06-28T10:47:33Z
Ruby Issue Tracking System
Ruby master - Bug #4870: forkのテストが非常にまれに失敗する
https://bugs.ruby-lang.org/issues/4870?journal_id=18599
2011-06-28T10:47:33Z
nahi (Hiroshi Nakamura)
nakahiro@gmail.com
<ul><li><strong>Assignee</strong> set to <i>kosaki (Motohiro KOSAKI)</i></li></ul><p>振り損ねていたようです。たぶん他に誰にも拾えないので処遇をお任せします。</p>
Ruby master - Bug #4870: forkのテストが非常にまれに失敗する
https://bugs.ruby-lang.org/issues/4870?journal_id=18601
2011-06-28T11:17:41Z
kosaki (Motohiro KOSAKI)
kosaki.motohiro@gmail.com
<ul><li><strong>Status</strong> changed from <i>Open</i> to <i>Assigned</i></li><li><strong>Target version</strong> changed from <i>1.9.3</i> to <i>2.0.0</i></li></ul><p>ああ、担当者を設定し忘れていましたか。すいません。<br>
ええと、ちょっと原因不明すぎて193に間に合う気がしないので遺憾ながら 1.9.x に設定しました。</p>
<p>以下調査状況</p>
<p>Macのlibcまわりのコードを読んだ感じだと _sigtramp はシグナルハンドラの本体<br>
(というかユーザが登録いた本物のシグナルハンドラとsigreturnを呼ぶラッパ)なのでシグナルを<br>
受信したんだろうな。と<br>
で、シグナルハンドラの延長で signal_exec() が呼ばれているのはあからさまにおかしいので<br>
メモリ破壊か、最適化の影響でバックトレースが取れなかったかなんですが、ソース見ると<br>
signal_exec()から直接 rb_bug_errno() を呼ぶルートがなさそうなので最適化の影響を疑っています。</p>
<p>なので、rb_bug_errno()を呼んでるあたりのどこかでEINTR処理を追加したら良さそうなんですが、はてさて</p>
Ruby master - Bug #4870: forkのテストが非常にまれに失敗する
https://bugs.ruby-lang.org/issues/4870?journal_id=21452
2011-10-23T00:12:21Z
kosaki (Motohiro KOSAKI)
kosaki.motohiro@gmail.com
<ul><li><strong>Status</strong> changed from <i>Assigned</i> to <i>Rejected</i></li></ul><p>だめ。<br>
二度と再現できない。自己クローズします</p>