Issue #10933 has been updated by Koichi Sasada.

Assignee set to Nobuyoshi Nakada

ありがとうございます。とてもわかりやすいログでした。

* cleanup フェーズに入る
  * sweep_rest を行なう(lazy sweep の後始末を行なう)
    * ここで、GC 中フラグが立ち、オブジェクト割り当てが禁止される
    * dynamic symbol の free を行なう
      * rb_hash_delete_entry() が走る
        * st_delete() 中で rb_any_cmp() -> rb_eql() -> rb_funcall() が呼ばれる
          * compare 処理を行なう
          * interrupt が走り、ファイナライザが起動される
            * run_finalizer() 中で配列を作る(ここでは ruby-level ファイナライザが起動されるので、これに限らない)
              * [BUG]

ということで、2.2.1 で導入されたバグだということがわかりました。ありがとうございます。


----------------------------------------
Bug #10933: [BUG] object allocation during garbage collection phase
https://bugs.ruby-lang.org/issues/10933#change-51748

* Author: Yoshiyuki MIKAMI
* Status: Open
* Priority: Normal
* Assignee: Nobuyoshi Nakada
* ruby -v: ruby 2.2.1p85 (2015-02-26 revision 49769) [x86_64-darwin14]
* Backport: 2.0.0: UNKNOWN, 2.1: UNKNOWN, 2.2: UNKNOWN
----------------------------------------
いつもお世話になっています。
rspec中に遭遇して、その後繰り返しても再現しないのですが、役に立てばと採取できたログをお送りします。
追加で提出すべき情報があればお知らせください。
よろしくお願いいたします。

---Files--------------------------------
crash.txt (165 KB)
ruby_2015-03-04-020941_Silver.crash (35 KB)


-- 
https://bugs.ruby-lang.org/