Skip to content

Instantly share code, notes, and snippets.

@mtsmfm
Last active March 28, 2021 04:36
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save mtsmfm/b8c57c198793b7e7b835ae3255f0037c to your computer and use it in GitHub Desktop.
Save mtsmfm/b8c57c198793b7e7b835ae3255f0037c to your computer and use it in GitHub Desktop.
Ruby hangs when accessing array which is modified in instance_eval after Coverage.start https://bugs.ruby-lang.org/issues/13586

Step to reproduce

git clone https://gist.github.com/b8c57c198793b7e7b835ae3255f0037c.git
cd b8c57c198793b7e7b835ae3255f0037c
docker run --rm -v $PWD:/app -w /app ruby:2.4.1 ruby main.rb
docker run --rm -v $PWD:/app -w /app ruby:2.4.0 ruby main.rb
class Foo
attr_reader :foo
def initialize
@foo = []
str = "add\n" * 1000 # Perhaps we need more repetition to reproduce
instance_eval str, __FILE__, __LINE__
end
def count
foo.count
end
def add
@foo << nil
end
end
require "coverage"
Coverage.start
require_relative "./foo"
# Perhaps we need more repetition to reproduce
1000.times do
Foo.new.count
end
/app/foo.rb:7: [BUG] Segmentation fault at 0x00000000000061
ruby 2.4.0p0 (2016-12-24 revision 57164) [x86_64-linux]
-- Control frame information -----------------------------------------------
c:0007 p:---- s:0029 e:000028 CFUNC :instance_eval
c:0006 p:0038 s:0022 e:000021 METHOD /app/foo.rb:7 [FINISH]
c:0005 p:---- s:0017 e:000016 CFUNC :new
c:0004 p:0014 s:0013 e:000012 BLOCK main.rb:9 [FINISH]
c:0003 p:---- s:0010 e:000009 CFUNC :times
c:0002 p:0039 s:0006 e:000005 EVAL main.rb:8 [FINISH]
c:0001 p:0000 s:0003 E:0001f0 (none) [FINISH]
-- Ruby level backtrace information ----------------------------------------
main.rb:8:in `<main>'
main.rb:8:in `times'
main.rb:9:in `block in <main>'
main.rb:9:in `new'
/app/foo.rb:7:in `initialize'
/app/foo.rb:7:in `instance_eval'
-- Machine register context ------------------------------------------------
RIP: 0x00007fb316cb84ae RBP: 0x000000000230b310 RSP: 0x00007fff2590aa78
RAX: 0x999999999999a3d0 RBX: 0x0000000001fccac0 RCX: 0x0000000000000006
RDX: 0x0000000000000146 RDI: 0x0000000001fccac0 RSI: 0x000000000230b310
R8: 0x0000000000000028 R9: 0x0000000000000001 R10: 0x0000000000000029
R11: 0x0000000000000000 R12: 0x0000000001fccac0 R13: 0x3a89ef5a1609c50f
R14: 0x0000000002188720 R15: 0x0000000000000005 EFL: 0x0000000000010206
-- C level backtrace information -------------------------------------------
/usr/local/lib/libruby.so.2.4(rb_vm_bugreport+0x4f3) [0x7fb316e1b313] vm_dump.c:679
/usr/local/lib/libruby.so.2.4(rb_bug_context+0xd4) [0x7fb316c9c5d4] error.c:426
/usr/local/lib/libruby.so.2.4(sigsegv+0x3e) [0x7fb316d8f4ce] signal.c:907
/lib/x86_64-linux-gnu/libpthread.so.0 [0x7fb3169e9890]
/usr/local/lib/libruby.so.2.4(rgengc_check_relation.part.58+0x3e) [0x7fb316cb84ae] gc.c:1119
/usr/local/lib/libruby.so.2.4(gc_mark_ptr+0xd5) [0x7fb316cb86f5] gc.c:4369
/usr/local/lib/libruby.so.2.4(mark_keyvalue+0x26) [0x7fb316cb89d6] gc.c:4375
/usr/local/lib/libruby.so.2.4(st_foreach+0x80) [0x7fb316d99a10] st.c:1465
/usr/local/lib/libruby.so.2.4(gc_mark_children+0x46c) [0x7fb316cb920c] gc.c:4065
/usr/local/lib/libruby.so.2.4(gc_start.part.66+0x44d) [0x7fb316cbbdfd] gc.c:5774
/usr/local/lib/libruby.so.2.4(heap_get_freeobj_from_next_freepage+0xdf) [0x7fb316cbe52f] gc.c:1696
/usr/local/lib/libruby.so.2.4(newobj_slowpath_wb_unprotected+0x120) [0x7fb316cbec60] gc.c:1742
/usr/local/lib/libruby.so.2.4(rb_node_newnode+0xb2) [0x7fb316cbf292] gc.c:1915
/usr/local/lib/libruby.so.2.4(block_append_gen+0xf1) [0x7fb316d17931] parse.y:8668
/usr/local/lib/libruby.so.2.4(ruby_yyparse+0xb0b5) [0x7fb316d2e0b5] parse.y:1055
/usr/local/lib/libruby.so.2.4(yycompile0+0xdc) [0x7fb316d34f0c] parse.y:5386
/usr/local/lib/libruby.so.2.4(rb_suppress_tracing+0x112) [0x7fb316e1dd92] vm_trace.c:407
/usr/local/lib/libruby.so.2.4(rb_parser_compile_string_path+0xd6) [0x7fb316d22116] parse.y:5423
/usr/local/lib/libruby.so.2.4(rb_iseq_compile_with_option+0x1c3) [0x7fb316ce40e3] iseq.c:640
/usr/local/lib/libruby.so.2.4(eval_string_with_cref+0x10c) [0x7fb316e0f1fc] vm_eval.c:1338
/usr/local/lib/libruby.so.2.4(specific_eval+0xed) [0x7fb316e0f81d] vm_eval.c:1635
/usr/local/lib/libruby.so.2.4(vm_call_cfunc+0xef) [0x7fb316dfda3f] vm_insnhelper.c:1752
/usr/local/lib/libruby.so.2.4(vm_exec_core+0x1780) [0x7fb316e06be0] insns.def:1066
/usr/local/lib/libruby.so.2.4(vm_exec+0x8b) [0x7fb316e0baab] vm.c:1712
/usr/local/lib/libruby.so.2.4(rb_call0+0x1ad) [0x7fb316e10d5d] vm_eval.c:61
/usr/local/lib/libruby.so.2.4(rb_class_new_instance+0x21) [0x7fb316d0e481] object.c:1895
/usr/local/lib/libruby.so.2.4(vm_call_cfunc+0xef) [0x7fb316dfda3f] vm_insnhelper.c:1752
/usr/local/lib/libruby.so.2.4(vm_exec_core+0x1780) [0x7fb316e06be0] insns.def:1066
/usr/local/lib/libruby.so.2.4(vm_exec+0x8b) [0x7fb316e0baab] vm.c:1712
/usr/local/lib/libruby.so.2.4(rb_yield_1+0x604) [0x7fb316e13494] vm.c:969
/usr/local/lib/libruby.so.2.4(int_dotimes+0x3e) [0x7fb316cfd62e] numeric.c:4968
/usr/local/lib/libruby.so.2.4(vm_call_cfunc+0xef) [0x7fb316dfda3f] vm_insnhelper.c:1752
/usr/local/lib/libruby.so.2.4(vm_call_method+0xe3) [0x7fb316e0df03] vm_insnhelper.c:2291
/usr/local/lib/libruby.so.2.4(vm_exec_core+0x12b4) [0x7fb316e06714] insns.def:967
/usr/local/lib/libruby.so.2.4(vm_exec+0x8b) [0x7fb316e0baab] vm.c:1712
/usr/local/lib/libruby.so.2.4(ruby_exec_internal+0xb2) [0x7fb316ca23b2] eval.c:244
/usr/local/lib/libruby.so.2.4(ruby_exec_node+0x1d) [0x7fb316ca40dd] eval.c:308
/usr/local/lib/libruby.so.2.4(ruby_run_node+0x1e) [0x7fb316ca6c4e] eval.c:300
/usr/local/bin/ruby(main+0x4b) [0x40087b] main.c:36
-- Other runtime information -----------------------------------------------
* Loaded script: main.rb
* Loaded features:
0 enumerator.so
1 thread.rb
2 rational.so
3 complex.so
4 /usr/local/lib/ruby/2.4.0/x86_64-linux/enc/encdb.so
5 /usr/local/lib/ruby/2.4.0/x86_64-linux/enc/trans/transdb.so
6 /usr/local/lib/ruby/2.4.0/unicode_normalize.rb
7 /usr/local/lib/ruby/2.4.0/x86_64-linux/rbconfig.rb
8 /usr/local/lib/ruby/site_ruby/2.4.0/rubygems/compatibility.rb
9 /usr/local/lib/ruby/site_ruby/2.4.0/rubygems/defaults.rb
10 /usr/local/lib/ruby/site_ruby/2.4.0/rubygems/deprecate.rb
11 /usr/local/lib/ruby/site_ruby/2.4.0/rubygems/errors.rb
12 /usr/local/lib/ruby/site_ruby/2.4.0/rubygems/version.rb
13 /usr/local/lib/ruby/site_ruby/2.4.0/rubygems/requirement.rb
14 /usr/local/lib/ruby/site_ruby/2.4.0/rubygems/platform.rb
15 /usr/local/lib/ruby/site_ruby/2.4.0/rubygems/basic_specification.rb
16 /usr/local/lib/ruby/site_ruby/2.4.0/rubygems/stub_specification.rb
17 /usr/local/lib/ruby/site_ruby/2.4.0/rubygems/util/list.rb
18 /usr/local/lib/ruby/2.4.0/x86_64-linux/stringio.so
19 /usr/local/lib/ruby/site_ruby/2.4.0/rubygems/specification.rb
20 /usr/local/lib/ruby/site_ruby/2.4.0/rubygems/exceptions.rb
21 
22 /usr/local/lib/ruby/site_ruby/2.4.0/rubygems/core_ext/kernel_gem.rb
23 /usr/local/lib/ruby/2.4.0/monitor.rb
24 /usr/local/lib/ruby/site_ruby/2.4.0/rubygems/core_ext/kernel_require.rb
25 /usr/local/lib/ruby/site_ruby/2.4.0/rubygems.rb
26 /usr/local/lib/ruby/site_ruby/2.4.0/rubygems/path_support.rb
27 /usr/local/lib/ruby/gems/2.4.0/gems/did_you_mean-1.1.0/lib/did_you_mean/version.rb
28 /usr/local/lib/ruby/gems/2.4.0/gems/did_you_mean-1.1.0/lib/did_you_mean/core_ext/name_error.rb
29 /usr/local/lib/ruby/gems/2.4.0/gems/did_you_mean-1.1.0/lib/did_you_mean/levenshtein.rb
30 /usr/local/lib/ruby/gems/2.4.0/gems/did_you_mean-1.1.0/lib/did_you_mean/jaro_winkler.rb
31 /usr/local/lib/ruby/gems/2.4.0/gems/did_you_mean-1.1.0/lib/did_you_mean/spell_checker.rb
32 /usr/local/lib/ruby/2.4.0/delegate.rb
33 /usr/local/lib/ruby/gems/2.4.0/gems/did_you_mean-1.1.0/lib/did_you_mean/spell_checkers/name_error_checkers/class_name_checker.rb
34 /usr/local/lib/ruby/gems/2.4.0/gems/did_you_mean-1.1.0/lib/did_you_mean/spell_checkers/name_error_checkers/variable_name_checker.rb
35 /usr/local/lib/ruby/gems/2.4.0/gems/did_you_mean-1.1.0/lib/did_you_mean/spell_checkers/name_error_checkers.rb
36 /usr/local/lib/ruby/gems/2.4.0/gems/did_you_mean-1.1.0/lib/did_you_mean/spell_checkers/method_name_checker.rb
37 /usr/local/lib/ruby/gems/2.4.0/gems/did_you_mean-1.1.0/lib/did_you_mean/spell_checkers/null_checker.rb
38 /usr/local/lib/ruby/gems/2.4.0/gems/did_you_mean-1.1.0/lib/did_you_mean/formatter.rb
39 /usr/local/lib/ruby/gems/2.4.0/gems/did_you_mean-1.1.0/lib/did_you_mean.rb
40 /usr/local/lib/ruby/2.4.0/x86_64-linux/coverage.so
41 /app/foo.rb
* Process memory map:
00400000-00401000 r-xp 00000000 00:3c 27 /usr/local/bin/ruby
00600000-00601000 rw-p 00000000 00:3c 27 /usr/local/bin/ruby
01fcc000-023ff000 rw-p 00000000 00:00 0 [heap]
7fb31443a000-7fb3145e3000 r--s 00000000 00:3c 46 /lib/x86_64-linux-gnu/libc-2.19.so
7fb3145e3000-7fb3154ce000 r--s 00000000 00:3c 35 /usr/local/lib/libruby.so.2.4.0
7fb3154ce000-7fb3154e4000 r-xp 00000000 00:3c 128 /lib/x86_64-linux-gnu/libgcc_s.so.1
7fb3154e4000-7fb3156e3000 ---p 00016000 00:3c 128 /lib/x86_64-linux-gnu/libgcc_s.so.1
7fb3156e3000-7fb3156e4000 rw-p 00015000 00:3c 128 /lib/x86_64-linux-gnu/libgcc_s.so.1
7fb3156e4000-7fb3156e5000 r-xp 00000000 00:3c 127 /usr/local/lib/ruby/2.4.0/x86_64-linux/coverage.so
7fb3156e5000-7fb3158e5000 ---p 00001000 00:3c 127 /usr/local/lib/ruby/2.4.0/x86_64-linux/coverage.so
7fb3158e5000-7fb3158e6000 rw-p 00001000 00:3c 127 /usr/local/lib/ruby/2.4.0/x86_64-linux/coverage.so
7fb3158e6000-7fb3158ee000 r-xp 00000000 00:3c 76 /usr/local/lib/ruby/2.4.0/x86_64-linux/stringio.so
7fb3158ee000-7fb315aed000 ---p 00008000 00:3c 76 /usr/local/lib/ruby/2.4.0/x86_64-linux/stringio.so
7fb315aed000-7fb315aee000 rw-p 00007000 00:3c 76 /usr/local/lib/ruby/2.4.0/x86_64-linux/stringio.so
7fb315aee000-7fb315af1000 r-xp 00000000 00:3c 59 /usr/local/lib/ruby/2.4.0/x86_64-linux/enc/trans/transdb.so
7fb315af1000-7fb315cf0000 ---p 00003000 00:3c 59 /usr/local/lib/ruby/2.4.0/x86_64-linux/enc/trans/transdb.so
7fb315cf0000-7fb315cf1000 rw-p 00002000 00:3c 59 /usr/local/lib/ruby/2.4.0/x86_64-linux/enc/trans/transdb.so
7fb315cf1000-7fb315cf3000 r-xp 00000000 00:3c 57 /usr/local/lib/ruby/2.4.0/x86_64-linux/enc/encdb.so
7fb315cf3000-7fb315ef2000 ---p 00002000 00:3c 57 /usr/local/lib/ruby/2.4.0/x86_64-linux/enc/encdb.so
7fb315ef2000-7fb315ef3000 rw-p 00001000 00:3c 57 /usr/local/lib/ruby/2.4.0/x86_64-linux/enc/encdb.so
7fb315ef3000-7fb316094000 r-xp 00000000 00:3c 46 /lib/x86_64-linux-gnu/libc-2.19.so
7fb316094000-7fb316294000 ---p 001a1000 00:3c 46 /lib/x86_64-linux-gnu/libc-2.19.so
7fb316294000-7fb316298000 r--p 001a1000 00:3c 46 /lib/x86_64-linux-gnu/libc-2.19.so
7fb316298000-7fb31629a000 rw-p 001a5000 00:3c 46 /lib/x86_64-linux-gnu/libc-2.19.so
7fb31629a000-7fb31629e000 rw-p 00000000 00:00 0
7fb31629e000-7fb31639e000 r-xp 00000000 00:3c 44 /lib/x86_64-linux-gnu/libm-2.19.so
7fb31639e000-7fb31659d000 ---p 00100000 00:3c 44 /lib/x86_64-linux-gnu/libm-2.19.so
7fb31659d000-7fb31659e000 r--p 000ff000 00:3c 44 /lib/x86_64-linux-gnu/libm-2.19.so
7fb31659e000-7fb31659f000 rw-p 00100000 00:3c 44 /lib/x86_64-linux-gnu/libm-2.19.so
7fb31659f000-7fb3165a7000 r-xp 00000000 00:3c 42 /lib/x86_64-linux-gnu/libcrypt-2.19.so
7fb3165a7000-7fb3167a6000 ---p 00008000 00:3c 42 /lib/x86_64-linux-gnu/libcrypt-2.19.so
7fb3167a6000-7fb3167a7000 r--p 00007000 00:3c 42 /lib/x86_64-linux-gnu/libcrypt-2.19.so
7fb3167a7000-7fb3167a8000 rw-p 00008000 00:3c 42 /lib/x86_64-linux-gnu/libcrypt-2.19.so
7fb3167a8000-7fb3167d6000 rw-p 00000000 00:00 0
7fb3167d6000-7fb3167d9000 r-xp 00000000 00:3c 40 /lib/x86_64-linux-gnu/libdl-2.19.so
7fb3167d9000-7fb3169d8000 ---p 00003000 00:3c 40 /lib/x86_64-linux-gnu/libdl-2.19.so
7fb3169d8000-7fb3169d9000 r--p 00002000 00:3c 40 /lib/x86_64-linux-gnu/libdl-2.19.so
7fb3169d9000-7fb3169da000 rw-p 00003000 00:3c 40 /lib/x86_64-linux-gnu/libdl-2.19.so
7fb3169da000-7fb3169f2000 r-xp 00000000 00:3c 38 /lib/x86_64-linux-gnu/libpthread-2.19.so
7fb3169f2000-7fb316bf1000 ---p 00018000 00:3c 38 /lib/x86_64-linux-gnu/libpthread-2.19.so
7fb316bf1000-7fb316bf2000 r--p 00017000 00:3c 38 /lib/x86_64-linux-gnu/libpthread-2.19.so
7fb316bf2000-7fb316bf3000 rw-p 00018000 00:3c 38 /lib/x86_64-linux-gnu/libpthread-2.19.so
7fb316bf3000-7fb316bf7000 rw-p 00000000 00:00 0
7fb316bf7000-7fb316ef6000 r-xp 00000000 00:3c 35 /usr/local/lib/libruby.so.2.4.0
7fb316ef6000-7fb3170f5000 ---p 002ff000 00:3c 35 /usr/local/lib/libruby.so.2.4.0
7fb3170f5000-7fb3170fe000 rw-p 002fe000 00:3c 35 /usr/local/lib/libruby.so.2.4.0
7fb3170fe000-7fb31710f000 rw-p 00000000 00:00 0
7fb31710f000-7fb31712f000 r-xp 00000000 00:3c 32 /lib/x86_64-linux-gnu/ld-2.19.so
7fb3171a8000-7fb3171ca000 r--s 00000000 00:3c 38 /lib/x86_64-linux-gnu/libpthread-2.19.so
7fb3171ca000-7fb3171ee000 r--s 00000000 00:3c 27 /usr/local/bin/ruby
7fb3171ee000-7fb317325000 rw-p 00000000 00:00 0
7fb317328000-7fb317329000 rw-p 00000000 00:00 0
7fb317329000-7fb31732a000 ---p 00000000 00:00 0
7fb31732a000-7fb31732f000 rw-p 00000000 00:00 0
7fb31732f000-7fb317330000 r--p 00020000 00:3c 32 /lib/x86_64-linux-gnu/ld-2.19.so
7fb317330000-7fb317331000 rw-p 00021000 00:3c 32 /lib/x86_64-linux-gnu/ld-2.19.so
7fb317331000-7fb317332000 rw-p 00000000 00:00 0
7fff2510f000-7fff2590e000 rw-p 00000000 00:00 0 [stack]
7fff259a9000-7fff259ab000 r--p 00000000 00:00 0 [vvar]
7fff259ab000-7fff259ad000 r-xp 00000000 00:00 0 [vdso]
ffffffffff600000-ffffffffff601000 r-xp 00000000 00:00 0 [vsyscall]
[NOTE]
You may have encountered a bug in the Ruby interpreter or extension libraries.
Bug reports are welcome.
For details: http://www.ruby-lang.org/bugreport.html
/app/foo.rb:7: [BUG] Segmentation fault at 0x00000000000001
ruby 2.4.1p111 (2017-03-22 revision 58053) [x86_64-linux]
-- Control frame information -----------------------------------------------
c:0007 p:---- s:0029 e:000028 CFUNC :instance_eval
c:0006 p:0038 s:0022 e:000021 METHOD /app/foo.rb:7 [FINISH]
c:0005 p:---- s:0017 e:000016 CFUNC :new
c:0004 p:0014 s:0013 e:000012 BLOCK main.rb:9 [FINISH]
c:0003 p:---- s:0010 e:000009 CFUNC :times
c:0002 p:0039 s:0006 e:000005 EVAL main.rb:8 [FINISH]
c:0001 p:0000 s:0003 E:001930 (none) [FINISH]
-- Ruby level backtrace information ----------------------------------------
main.rb:8:in `<main>'
main.rb:8:in `times'
main.rb:9:in `block in <main>'
main.rb:9:in `new'
/app/foo.rb:7:in `initialize'
/app/foo.rb:7:in `instance_eval'
-- Machine register context ------------------------------------------------
RIP: 0x00007f4230153599 RBP: 0x0000000000000001 RSP: 0x00007ffe62d245d0
RAX: 0x0000000000000001 RBX: 0x00000000021e33c0 RCX: 0x0000000000000023
RDX: 0x0000000000000000 RDI: 0x0000000000000001 RSI: 0x0000000000000000
R8: 0x000000000000002a R9: 0x0000000000000000 R10: 0x0000000000000000
R11: 0x0000000000000000 R12: 0x0000000000000000 R13: 0x00000000021e3460
R14: 0x0000000000000000 R15: 0x00000000022629f0 EFL: 0x0000000000010202
-- C level backtrace information -------------------------------------------
/usr/local/lib/libruby.so.2.4(rb_vm_bugreport+0x4f3) [0x7f4230306683] vm_dump.c:684
/usr/local/lib/libruby.so.2.4(rb_bug_context+0xd4) [0x7f42301853a4] error.c:506
/usr/local/lib/libruby.so.2.4(sigsegv+0x3e) [0x7f423027a05e] signal.c:907
/lib/x86_64-linux-gnu/libpthread.so.0 [0x7f422fed1890]
/usr/local/lib/libruby.so.2.4(iseq_setup+0xc9) [0x7f4230153599] compile.c:2476
/usr/local/lib/libruby.so.2.4(rb_iseq_compile_node+0x147) [0x7f4230154fe7] compile.c:673
/usr/local/lib/libruby.so.2.4(rb_iseq_new_with_opt+0x94) [0x7f42301cc184] iseq.c:483
/usr/local/lib/libruby.so.2.4(rb_iseq_compile_with_option+0x200) [0x7f42301cd250] iseq.c:650
/usr/local/lib/libruby.so.2.4(eval_string_with_cref+0x10c) [0x7f42302fb48c] vm_eval.c:1345
/usr/local/lib/libruby.so.2.4(rb_obj_instance_eval+0x16e) [0x7f42302fbb2e] vm_eval.c:1645
/usr/local/lib/libruby.so.2.4(vm_call_cfunc+0xef) [0x7f42302e8f3f] vm_insnhelper.c:1752
/usr/local/lib/libruby.so.2.4(vm_call_method+0xe3) [0x7f42302fab13] vm_insnhelper.c:2292
/usr/local/lib/libruby.so.2.4(vm_exec_core+0x1610) [0x7f42302f23d0] insns.def:1066
/usr/local/lib/libruby.so.2.4(vm_exec+0x8b) [0x7f42302f742b] vm.c:1727
/usr/local/lib/libruby.so.2.4(rb_call0+0x1ad) [0x7f42302fd4fd] vm_eval.c:62
/usr/local/lib/libruby.so.2.4(rb_class_new_instance+0x21) [0x7f42301f77f1] object.c:1896
/usr/local/lib/libruby.so.2.4(vm_call_cfunc+0xef) [0x7f42302e8f3f] vm_insnhelper.c:1752
/usr/local/lib/libruby.so.2.4(vm_call_method+0xe3) [0x7f42302fab13] vm_insnhelper.c:2292
/usr/local/lib/libruby.so.2.4(vm_exec_core+0x1610) [0x7f42302f23d0] insns.def:1066
/usr/local/lib/libruby.so.2.4(vm_exec+0x8b) [0x7f42302f742b] vm.c:1727
/usr/local/lib/libruby.so.2.4(invoke_iseq_block_from_c+0x516) [0x7f42302f8206] vm.c:969
/usr/local/lib/libruby.so.2.4(rb_yield_1+0xb4) [0x7f42302f8ea4] vm.c:1032
/usr/local/lib/libruby.so.2.4(int_dotimes+0x3e) [0x7f42301e6aee] numeric.c:4977
/usr/local/lib/libruby.so.2.4(vm_call_cfunc+0xef) [0x7f42302e8f3f] vm_insnhelper.c:1752
/usr/local/lib/libruby.so.2.4(vm_call_method+0xe3) [0x7f42302fab13] vm_insnhelper.c:2292
/usr/local/lib/libruby.so.2.4(vm_exec_core+0x113f) [0x7f42302f1eff] insns.def:967
/usr/local/lib/libruby.so.2.4(vm_exec+0x8b) [0x7f42302f742b] vm.c:1727
/usr/local/lib/libruby.so.2.4(ruby_exec_internal+0xb2) [0x7f423018b132] eval.c:244
/usr/local/lib/libruby.so.2.4(ruby_exec_node+0x1d) [0x7f423018cead] eval.c:308
/usr/local/lib/libruby.so.2.4(ruby_run_node+0x1e) [0x7f423018fa6e] eval.c:300
/usr/local/bin/ruby(main+0x4b) [0x40087b] main.c:36
-- Other runtime information -----------------------------------------------
* Loaded script: main.rb
* Loaded features:
0 enumerator.so
1 thread.rb
2 rational.so
3 complex.so
4 /usr/local/lib/ruby/2.4.0/x86_64-linux/enc/encdb.so
5 /usr/local/lib/ruby/2.4.0/x86_64-linux/enc/trans/transdb.so
6 /usr/local/lib/ruby/2.4.0/unicode_normalize.rb
7 /usr/local/lib/ruby/2.4.0/x86_64-linux/rbconfig.rb
8 /usr/local/lib/ruby/site_ruby/2.4.0/rubygems/compatibility.rb
9 /usr/local/lib/ruby/site_ruby/2.4.0/rubygems/defaults.rb
10 /usr/local/lib/ruby/site_ruby/2.4.0/rubygems/deprecate.rb
11 /usr/local/lib/ruby/site_ruby/2.4.0/rubygems/errors.rb
12 /usr/local/lib/ruby/site_ruby/2.4.0/rubygems/version.rb
13 /usr/local/lib/ruby/site_ruby/2.4.0/rubygems/requirement.rb
14 /usr/local/lib/ruby/site_ruby/2.4.0/rubygems/platform.rb
15 /usr/local/lib/ruby/site_ruby/2.4.0/rubygems/basic_specification.rb
16 /usr/local/lib/ruby/site_ruby/2.4.0/rubygems/stub_specification.rb
17 /usr/local/lib/ruby/site_ruby/2.4.0/rubygems/util/list.rb
18 /usr/local/lib/ruby/2.4.0/x86_64-linux/stringio.so
19 /usr/local/lib/ruby/site_ruby/2.4.0/rubygems/specification.rb
20 /usr/local/lib/ruby/site_ruby/2.4.0/rubygems/exceptions.rb
21 /usr/local/lib/ruby/site_ruby/2.4.0/rubygems/dependency.rb
22 /usr/local/lib/ruby/site_ruby/2.4.0/rubygems/core_ext/kernel_gem.rb
23 /usr/local/lib/ruby/2.4.0/monitor.rb
24 /usr/local/lib/ruby/site_ruby/2.4.0/rubygems/core_ext/kernel_require.rb
25 /usr/local/lib/ruby/site_ruby/2.4.0/rubygems.rb
26 /usr/local/lib/ruby/site_ruby/2.4.0/rubygems/path_support.rb
27 /usr/local/lib/ruby/gems/2.4.0/gems/did_you_mean-1.1.0/lib/did_you_mean/version.rb
28 /usr/local/lib/ruby/gems/2.4.0/gems/did_you_mean-1.1.0/lib/did_you_mean/core_ext/name_error.rb
29 /usr/local/lib/ruby/gems/2.4.0/gems/did_you_mean-1.1.0/lib/did_you_mean/levenshtein.rb
30 /usr/local/lib/ruby/gems/2.4.0/gems/did_you_mean-1.1.0/lib/did_you_mean/jaro_winkler.rb
31 /usr/local/lib/ruby/gems/2.4.0/gems/did_you_mean-1.1.0/lib/did_you_mean/spell_checker.rb
32 /usr/local/lib/ruby/2.4.0/delegate.rb
33 /usr/local/lib/ruby/gems/2.4.0/gems/did_you_mean-1.1.0/lib/did_you_mean/spell_checkers/name_error_checkers/class_name_checker.rb
34 /usr/local/lib/ruby/gems/2.4.0/gems/did_you_mean-1.1.0/lib/did_you_mean/spell_checkers/name_error_checkers/variable_name_checker.rb
35 /usr/local/lib/ruby/gems/2.4.0/gems/did_you_mean-1.1.0/lib/did_you_mean/spell_checkers/name_error_checkers.rb
36 /usr/local/lib/ruby/gems/2.4.0/gems/did_you_mean-1.1.0/lib/did_you_mean/spell_checkers/method_name_checker.rb
37 /usr/local/lib/ruby/gems/2.4.0/gems/did_you_mean-1.1.0/lib/did_you_mean/spell_checkers/null_checker.rb
38 /usr/local/lib/ruby/gems/2.4.0/gems/did_you_mean-1.1.0/lib/did_you_mean/formatter.rb
39 /usr/local/lib/ruby/gems/2.4.0/gems/did_you_mean-1.1.0/lib/did_you_mean.rb
40 /usr/local/lib/ruby/2.4.0/x86_64-linux/coverage.so
41 /app/foo.rb
* Process memory map:
00400000-00401000 r-xp 00000000 00:40 27 /usr/local/bin/ruby
00600000-00601000 rw-p 00000000 00:40 27 /usr/local/bin/ruby
01f25000-022dd000 rw-p 00000000 00:00 0 [heap]
7f422d912000-7f422dabb000 r--s 00000000 00:40 46 /lib/x86_64-linux-gnu/libc-2.19.so
7f422dabb000-7f422e9b6000 r--s 00000000 00:40 35 /usr/local/lib/libruby.so.2.4.1
7f422e9b6000-7f422e9cc000 r-xp 00000000 00:40 128 /lib/x86_64-linux-gnu/libgcc_s.so.1
7f422e9cc000-7f422ebcb000 ---p 00016000 00:40 128 /lib/x86_64-linux-gnu/libgcc_s.so.1
7f422ebcb000-7f422ebcc000 rw-p 00015000 00:40 128 /lib/x86_64-linux-gnu/libgcc_s.so.1
7f422ebcc000-7f422ebcd000 r-xp 00000000 00:40 127 /usr/local/lib/ruby/2.4.0/x86_64-linux/coverage.so
7f422ebcd000-7f422edcd000 ---p 00001000 00:40 127 /usr/local/lib/ruby/2.4.0/x86_64-linux/coverage.so
7f422edcd000-7f422edce000 rw-p 00001000 00:40 127 /usr/local/lib/ruby/2.4.0/x86_64-linux/coverage.so
7f422edce000-7f422edd6000 r-xp 00000000 00:40 76 /usr/local/lib/ruby/2.4.0/x86_64-linux/stringio.so
7f422edd6000-7f422efd5000 ---p 00008000 00:40 76 /usr/local/lib/ruby/2.4.0/x86_64-linux/stringio.so
7f422efd5000-7f422efd6000 rw-p 00007000 00:40 76 /usr/local/lib/ruby/2.4.0/x86_64-linux/stringio.so
7f422efd6000-7f422efd9000 r-xp 00000000 00:40 59 /usr/local/lib/ruby/2.4.0/x86_64-linux/enc/trans/transdb.so
7f422efd9000-7f422f1d8000 ---p 00003000 00:40 59 /usr/local/lib/ruby/2.4.0/x86_64-linux/enc/trans/transdb.so
7f422f1d8000-7f422f1d9000 rw-p 00002000 00:40 59 /usr/local/lib/ruby/2.4.0/x86_64-linux/enc/trans/transdb.so
7f422f1d9000-7f422f1db000 r-xp 00000000 00:40 57 /usr/local/lib/ruby/2.4.0/x86_64-linux/enc/encdb.so
7f422f1db000-7f422f3da000 ---p 00002000 00:40 57 /usr/local/lib/ruby/2.4.0/x86_64-linux/enc/encdb.so
7f422f3da000-7f422f3db000 rw-p 00001000 00:40 57 /usr/local/lib/ruby/2.4.0/x86_64-linux/enc/encdb.so
7f422f3db000-7f422f57c000 r-xp 00000000 00:40 46 /lib/x86_64-linux-gnu/libc-2.19.so
7f422f57c000-7f422f77c000 ---p 001a1000 00:40 46 /lib/x86_64-linux-gnu/libc-2.19.so
7f422f77c000-7f422f780000 r--p 001a1000 00:40 46 /lib/x86_64-linux-gnu/libc-2.19.so
7f422f780000-7f422f782000 rw-p 001a5000 00:40 46 /lib/x86_64-linux-gnu/libc-2.19.so
7f422f782000-7f422f786000 rw-p 00000000 00:00 0
7f422f786000-7f422f886000 r-xp 00000000 00:40 44 /lib/x86_64-linux-gnu/libm-2.19.so
7f422f886000-7f422fa85000 ---p 00100000 00:40 44 /lib/x86_64-linux-gnu/libm-2.19.so
7f422fa85000-7f422fa86000 r--p 000ff000 00:40 44 /lib/x86_64-linux-gnu/libm-2.19.so
7f422fa86000-7f422fa87000 rw-p 00100000 00:40 44 /lib/x86_64-linux-gnu/libm-2.19.so
7f422fa87000-7f422fa8f000 r-xp 00000000 00:40 42 /lib/x86_64-linux-gnu/libcrypt-2.19.so
7f422fa8f000-7f422fc8e000 ---p 00008000 00:40 42 /lib/x86_64-linux-gnu/libcrypt-2.19.so
7f422fc8e000-7f422fc8f000 r--p 00007000 00:40 42 /lib/x86_64-linux-gnu/libcrypt-2.19.so
7f422fc8f000-7f422fc90000 rw-p 00008000 00:40 42 /lib/x86_64-linux-gnu/libcrypt-2.19.so
7f422fc90000-7f422fcbe000 rw-p 00000000 00:00 0
7f422fcbe000-7f422fcc1000 r-xp 00000000 00:40 40 /lib/x86_64-linux-gnu/libdl-2.19.so
7f422fcc1000-7f422fec0000 ---p 00003000 00:40 40 /lib/x86_64-linux-gnu/libdl-2.19.so
7f422fec0000-7f422fec1000 r--p 00002000 00:40 40 /lib/x86_64-linux-gnu/libdl-2.19.so
7f422fec1000-7f422fec2000 rw-p 00003000 00:40 40 /lib/x86_64-linux-gnu/libdl-2.19.so
7f422fec2000-7f422feda000 r-xp 00000000 00:40 38 /lib/x86_64-linux-gnu/libpthread-2.19.so
7f422feda000-7f42300d9000 ---p 00018000 00:40 38 /lib/x86_64-linux-gnu/libpthread-2.19.so
7f42300d9000-7f42300da000 r--p 00017000 00:40 38 /lib/x86_64-linux-gnu/libpthread-2.19.so
7f42300da000-7f42300db000 rw-p 00018000 00:40 38 /lib/x86_64-linux-gnu/libpthread-2.19.so
7f42300db000-7f42300df000 rw-p 00000000 00:00 0
7f42300df000-7f42303e0000 r-xp 00000000 00:40 35 /usr/local/lib/libruby.so.2.4.1
7f42303e0000-7f42305df000 ---p 00301000 00:40 35 /usr/local/lib/libruby.so.2.4.1
7f42305df000-7f42305e8000 rw-p 00300000 00:40 35 /usr/local/lib/libruby.so.2.4.1
7f42305e8000-7f42305f9000 rw-p 00000000 00:00 0
7f42305f9000-7f4230619000 r-xp 00000000 00:40 32 /lib/x86_64-linux-gnu/ld-2.19.so
7f4230692000-7f42306b4000 r--s 00000000 00:40 38 /lib/x86_64-linux-gnu/libpthread-2.19.so
7f42306b4000-7f42306d8000 r--s 00000000 00:40 27 /usr/local/bin/ruby
7f42306d8000-7f423080f000 rw-p 00000000 00:00 0
7f4230812000-7f4230813000 rw-p 00000000 00:00 0
7f4230813000-7f4230814000 ---p 00000000 00:00 0
7f4230814000-7f4230819000 rw-p 00000000 00:00 0
7f4230819000-7f423081a000 r--p 00020000 00:40 32 /lib/x86_64-linux-gnu/ld-2.19.so
7f423081a000-7f423081b000 rw-p 00021000 00:40 32 /lib/x86_64-linux-gnu/ld-2.19.so
7f423081b000-7f423081c000 rw-p 00000000 00:00 0
7ffe62529000-7ffe62d28000 rw-p 00000000 00:00 0 [stack]
7ffe62da4000-7ffe62da6000 r--p 00000000 00:00 0 [vvar]
7ffe62da6000-7ffe62da8000 r-xp 00000000 00:00 0 [vdso]
ffffffffff600000-ffffffffff601000 r-xp 00000000 00:00 0 [vsyscall]
[NOTE]
You may have encountered a bug in the Ruby interpreter or extension libraries.
Bug reports are welcome.
For details: http://www.ruby-lang.org/bugreport.html
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment