Actions
Bug #10933
closed[BUG] object allocation during garbage collection phase
Description
いつもお世話になっています。
rspec中に遭遇して、その後繰り返しても再現しないのですが、役に立てばと採取できたログをお送りします。
追加で提出すべき情報があればお知らせください。
よろしくお願いいたします。
Files
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]
- run_finalizer() 中で配列を作る(ここでは ruby-level ファイナライザが起動されるので、これに限らない)
- st_delete() 中で rb_any_cmp() -> rb_eql() -> rb_funcall() が呼ばれる
- rb_hash_delete_entry() が走る
- sweep_rest を行なう(lazy sweep の後始末を行なう)
ということで、2.2.1 で導入されたバグだということがわかりました。ありがとうございます。
Updated by yoshuki (Yoshiyuki MIKAMI) over 9 years ago
早速のレスありがとうございました。よろしくお願いします!
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]
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.
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
Updated by nobu (Nobuyoshi Nakada) over 9 years ago
- Has duplicate Bug #11351: Random chrash [BUG] object allocation during garbage collection phase added
Updated by nobu (Nobuyoshi Nakada) over 9 years ago
- Has duplicate Bug #11354: Ruby Crash while added
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
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)
Updated by nobu (Nobuyoshi Nakada) almost 9 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?
Updated by mame (Yusuke Endoh) over 5 years ago
- Has duplicate Bug #15959: Bug in the Ruby interpreter or extension libraries added
Actions
Like0
Like0Like0Like0Like0Like0Like0Like0Like0Like0Like0Like0Like0Like0Like0