Project

General

Profile

Actions

Bug #10933

closed

[BUG] object allocation during garbage collection phase

Added by yoshuki (Yoshiyuki MIKAMI) over 9 years ago. Updated over 8 years ago.

Status:
Closed
Target version:
-
ruby -v:
ruby 2.2.1p85 (2015-02-26 revision 49769) [x86_64-darwin14]
[ruby-dev:48891]

Description

いつもお世話になっています。
rspec中に遭遇して、その後繰り返しても再現しないのですが、役に立てばと採取できたログをお送りします。
追加で提出すべき情報があればお知らせください。
よろしくお願いいたします。


Files

crash.txt (165 KB) crash.txt yoshuki (Yoshiyuki MIKAMI), 03/04/2015 01:33 AM
ruby_2015-03-04-020941_Silver.crash (35 KB) ruby_2015-03-04-020941_Silver.crash yoshuki (Yoshiyuki MIKAMI), 03/04/2015 01:33 AM

Related issues 5 (0 open5 closed)

Has duplicate Ruby master - Bug #11168: object allocation during garbage collection phase when rake assets:precompile on 2.2.2ClosedActions
Has duplicate Ruby master - Bug #11351: Random chrash [BUG] object allocation during garbage collection phaseClosedActions
Has duplicate Ruby master - Bug #11354: Ruby Crash whileClosedActions
Has duplicate Ruby master - Bug #12067: [BUG] object allocation during garbage collection phaseClosedActions
Has duplicate Ruby master - Bug #15959: Bug in the Ruby interpreter or extension librariesClosedActions

Updated by yoshuki (Yoshiyuki MIKAMI) over 9 years ago

I encountered non-recurring bug during rspec.
I hope attached files will help.
If I should send extra information abount this bug, please let me know.

Thanks,

Updated by ko1 (Koichi Sasada) over 9 years ago

  • Assignee set to nobu (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 で導入されたバグだということがわかりました。ありがとうございます。

Updated by yoshuki (Yoshiyuki MIKAMI) over 9 years ago

早速のレスありがとうございました。よろしくお願いします!

Actions #4

Updated by nobu (Nobuyoshi Nakada) over 9 years ago

  • Status changed from Open to Closed
  • % Done changed from 0 to 100

Applied in changeset r49842.


symbol.c: make dsym_fstrs an identity hash

  • symbol.c (Init_sym): make dsym_fstrs a hash compared by identity
    as the keys are unique fstrings, to get rid of running hash and
    compare methods and causing new object allocation during garbage
    collection phase. [ruby-dev:48891] [Bug #10933]
Actions #5

Updated by nobu (Nobuyoshi Nakada) over 9 years ago

  • Backport changed from 2.0.0: UNKNOWN, 2.1: UNKNOWN, 2.2: UNKNOWN to 2.0.0: DONTNEED, 2.1: DONTNEED, 2.2: REQUIRED

Updated by nagachika (Tomoyuki Chikanaga) over 9 years ago

  • Backport changed from 2.0.0: DONTNEED, 2.1: DONTNEED, 2.2: REQUIRED to 2.0.0: DONTNEED, 2.1: DONTNEED, 2.2: DONE

Backported into ruby_2_2 branch at r50493.

Actions #7

Updated by nobu (Nobuyoshi Nakada) over 9 years ago

  • Has duplicate Bug #11168: object allocation during garbage collection phase when rake assets:precompile on 2.2.2 added
Actions #8

Updated by nobu (Nobuyoshi Nakada) over 9 years ago

  • Has duplicate Bug #11351: Random chrash [BUG] object allocation during garbage collection phase added
Actions #9

Updated by nobu (Nobuyoshi Nakada) over 9 years ago

  • Has duplicate Bug #11354: Ruby Crash while added
Actions #10

Updated by nobu (Nobuyoshi Nakada) over 9 years ago

  • Has duplicate Bug #11411: Crash in rb_gc_mark() during Rails app boot with GC.stress=1 added
Actions #11

Updated by nobu (Nobuyoshi Nakada) over 9 years ago

  • Has duplicate deleted (Bug #11411: Crash in rb_gc_mark() during Rails app boot with GC.stress=1)
Actions #12

Updated by nobu (Nobuyoshi Nakada) over 8 years ago

  • Has duplicate Bug #12067: [BUG] object allocation during garbage collection phase added

Updated by vo.x (Vit Ondruch) over 8 years ago

Hi, just wondering that since this patch appears to fix this issue, is there a chance that somebody would provide more details how to actually systematically reproduce this issue?

Actions #14

Updated by mame (Yusuke Endoh) over 5 years ago

  • Has duplicate Bug #15959: Bug in the Ruby interpreter or extension libraries added
Actions

Also available in: Atom PDF

Like0
Like0Like0Like0Like0Like0Like0Like0Like0Like0Like0Like0Like0Like0Like0