Project

General

Profile

Feature #17633

Updated by fidalgo (Paulo Fidalgo) about 3 years ago

Sorry, I've created I'm running this code against ruby 3.0.0 
 ``` 
 # frozen_string_literal: true 

 def number_combinations 
   @number_combinations ||= (1..50).to_a.combination(5) 
 end 

 def max_sequence_numbers_reached?(elements) 
   elements.slice_when { |i, j| i + 1 == j }.count <= 2 
 end 

 puts "Combinations size:#{number_combinations.size}" 
 splits = number_combinations.each_slice(number_combinations.size / 8) 
 ractors = [] 
 splits.each do |split| 
   ractor = Ractor.new do 
     combination = Ractor.receive 
     puts "Received combination size:#{combination.size}" 
     combination.map { |c| c unless max_sequence_numbers_reached?(c) }.compact 
   end 
   ractor.send(split) 
   ractors << ractor 
 end 
 result = ractors.map(&:take) 
 puts result.flatten.size 
 ``` 

 I'm taking one big array, split it into 8 other arrays and then use one actor for each subset to check if there is more than 2 sequence numbers. 
 Since I'm not sharing state between actors nor doing something fancy, I would expect this to run 100% of the report on times. 
 I have different errors when running 

 ``` 
 ruby ractor.rb  
 Combinations size:2118760 
 <internal:ractor>:267: warning: Ractor is experimental, and the wrong place. Can be deleted/closed. behavior may change in future versions of Ruby! Also there are many implementation issues. 
 Received combination size:264845 
 Received combination size:264845 
 Received combination size:264845 
 Received combination size:264845 
 malloc(): unaligned fastbin chunk detected 
 Aborted (core dumped) 
 ``` 
 ``` 
 ruby ractor.rb  
 Combinations size:2118760 
 <internal:ractor>:267: warning: Ractor is experimental, and the behavior may change in future versions of Ruby! Also there are many implementation issues. 
 Received combination size:264845 
 Received combination size:264845 
 Received combination size:264845 
 Received combination size:264845 
 Received combination size:264845 
 Received combination size:264845 
 <OBJ_INFO:gc_mark_ptr@gc.c:6106> 0x0000000007666050 [0 M     ] T_NONE  
 ractor.rb:8: [BUG] try to mark T_NONE object 
 ruby 3.0.0p0 (2020-12-25 revision 95aff21468) [x86_64-linux] 

 -- Control frame information ----------------------------------------------- 
 c:0011 p:---- s:0039 e:000038 IFUNC  
 c:0010 p:---- s:0036 e:000035 CFUNC    :each 
 c:0009 p:---- s:0033 e:000032 IFUNC  
 c:0008 p:---- s:0030 E:0014e0 CFUNC    :each 
 c:0007 p:---- s:0027 e:000026 CFUNC    :each 
 c:0006 p:---- s:0024 E:001480 CFUNC    :count 
 c:0005 p:0008 s:0020 E:0012d8 METHOD ractor.rb:8 
 c:0004 p:0006 s:0015 e:000014 BLOCK    ractor.rb:18 [FINISH] 
 c:0003 p:---- s:0011 e:000010 CFUNC    :map 
 c:0002 p:0040 s:0007 e:000006 BLOCK    ractor.rb:18 [FINISH] 
 c:0001 p:---- s:0003 e:000002 (none) [FINISH] 

 -- Ruby level backtrace information ---------------------------------------- 
 ractor.rb:18:in `block (2 levels) in <main>' 
 ractor.rb:18:in `map' 
 ractor.rb:18:in `block (3 levels) in <main>' 
 ractor.rb:8:in `max_sequence_numbers_reached?' 
 ractor.rb:8:in `count' 
 ractor.rb:8:in `each' 
 ractor.rb:8:in `each' 
 ractor.rb:8:in `each' 

 -- C level backtrace information ------------------------------------------- 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(rb_print_backtrace+0x11) [0x7faa0e3fa6fb] vm_dump.c:758 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(rb_vm_bugreport) vm_dump.c:998 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(bug_report_end+0x0) [0x7faa0e207dfa] error.c:763 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(rb_bug_without_die) error.c:763 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(die+0x0) [0x7faa0e171e01] error.c:771 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(rb_bug) error.c:773 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(gc_mark_ptr+0xd8) [0x7faa0e22d768] gc.c:6107 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(generator_mark+0xc) [0x7faa0e1fcdec] enumerator.c:1387 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(is_mark_stack_empty+0x0) [0x7faa0e2304cc] gc.c:6454 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(pop_mark_stack) gc.c:5458 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(gc_mark_stacked_objects) gc.c:6448 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(gc_mark_stacked_objects_all) gc.c:6494 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(gc_marks_rest) gc.c:7435 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(gc_marks+0x8) [0x7faa0e230e08] gc.c:7491 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(gc_start) gc.c:8309 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(rb_multi_ractor_p+0x0) [0x7faa0e23299f] gc.c:8197 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(rb_vm_lock_leave) vm_sync.h:93 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(garbage_collect) gc.c:8199 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(garbage_collect_with_gvl) gc.c:8502 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(objspace_malloc_increase) gc.c:10448 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(objspace_malloc_increase) gc.c:10426 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(objspace_malloc_fixup+0x17) [0x7faa0e2351c4] gc.c:10527 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(ruby_xmalloc2) gc.c:10598 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(ary_heap_alloc+0x14) [0x7faa0e178504] array.c:329 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(ary_heap_alloc) array.c:320 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(ary_resize_capa) array.c:448 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(ary_double_capa+0x44) [0x7faa0e17cd88] array.c:502 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(ary_ensure_room_for_push) array.c:653 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(rb_array_ptr_use_start+0x0) [0x7faa0e17cf0d] array.c:1304 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(rb_ary_push) array.c:1305 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(slicewhen_ii+0x132) [0x7faa0e1f8902] enum.c:3693 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(rb_vm_pop_frame+0x0) [0x7faa0e3daab8] vm_insnhelper.c:3704 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(vm_yield_with_cfunc) vm_insnhelper.c:3705 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(invoke_block_from_c_bh+0x10) [0x7faa0e3f21f3] vm.c:1358 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(vm_yield) vm.c:1398 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(rb_yield_0) vm_eval.c:1171 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(rb_yield_1) vm_eval.c:1177 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(rb_yield) vm_eval.c:1187 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(RB_FL_TEST_RAW+0x0) [0x7faa0e17695c] array.c:2523 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(RB_FL_ANY_RAW) ./include/ruby/internal/fl_type.h:258 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(rb_array_len) ./include/ruby/internal/core/rarray.h:135 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(rb_ary_each) array.c:2522 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(vm_cfp_consistent_p+0x0) [0x7faa0e3e79e6] vm_eval.c:95 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(vm_call0_cfunc_with_frame) vm_eval.c:97 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(vm_call0_cfunc) vm_eval.c:109 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(vm_call0_body) vm_eval.c:144 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(rb_vm_call0) vm_eval.c:57 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(rb_call0+0x6a) [0x7faa0e3efc7e] vm_eval.c:361 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(rb_call) vm_eval.c:689 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(iterate_method) vm_eval.c:1406 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(rb_iterate0+0xf8) [0x7faa0e3d74b8] vm_eval.c:1355 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(rb_block_call+0x53) [0x7faa0e3d76e3] vm_eval.c:1420 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(rb_obj_wb_unprotect+0x0) [0x7faa0e1f6100] enum.c:3718 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(RARRAY_PTR) ./include/ruby/internal/core/rarray.h:248 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(slicewhen_i) enum.c:3719 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(rb_vm_pop_frame+0x0) [0x7faa0e3daab8] vm_insnhelper.c:3704 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(vm_yield_with_cfunc) vm_insnhelper.c:3705 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(vm_invoke_proc+0x2a0) [0x7faa0e3e65d0] vm.c:1448 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(rb_vm_invoke_proc+0x57) [0x7faa0e3e7707] vm.c:1485 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(rb_proc_call_kw+0x9c) [0x7faa0e2f1bbc] proc.c:973 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(vm_cfp_consistent_p+0x0) [0x7faa0e3e79e6] vm_eval.c:95 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(vm_call0_cfunc_with_frame) vm_eval.c:97 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(vm_call0_cfunc) vm_eval.c:109 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(vm_call0_body) vm_eval.c:144 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(rb_vm_call0) vm_eval.c:57 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(rb_call0+0x6a) [0x7faa0e3efc7e] vm_eval.c:361 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(rb_call) vm_eval.c:689 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(iterate_method) vm_eval.c:1406 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(rb_iterate0+0xf8) [0x7faa0e3d74b8] vm_eval.c:1355 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(rb_block_call_kw+0x53) [0x7faa0e3d7753] vm_eval.c:1434 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(enumerator_block_call+0x59) [0x7faa0e200049] enumerator.c:555 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(vm_cfp_consistent_p+0x0) [0x7faa0e3e79e6] vm_eval.c:95 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(vm_call0_cfunc_with_frame) vm_eval.c:97 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(vm_call0_cfunc) vm_eval.c:109 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(vm_call0_body) vm_eval.c:144 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(rb_vm_call0) vm_eval.c:57 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(rb_call0+0x6a) [0x7faa0e3efc7e] vm_eval.c:361 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(rb_call) vm_eval.c:689 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(iterate_method) vm_eval.c:1406 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(rb_iterate0+0xf8) [0x7faa0e3d74b8] vm_eval.c:1355 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(rb_block_call+0x53) [0x7faa0e3d76e3] vm_eval.c:1420 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(imemo_count_value+0x0) [0x7faa0e1f43c3] enum.c:282 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(enum_count) enum.c:283 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(vm_cfp_consistent_p+0x0) [0x7faa0e3d203c] vm_insnhelper.c:2898 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(vm_call_cfunc_with_frame) vm_insnhelper.c:2900 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(vm_sendish+0x366) [0x7faa0e3dc4e6] vm_insnhelper.c:4499 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(vm_exec_core+0x9e) [0x7faa0e3df35e] insns.def:789 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(rb_vm_exec+0x182) [0x7faa0e3e4812] vm.c:2163 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(rb_yield+0x25a) [0x7faa0e3f20da] vm.c:1263 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(rb_ary_collect+0x5c) [0x7faa0e17d67c] array.c:3635 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(vm_cfp_consistent_p+0x0) [0x7faa0e3d203c] vm_insnhelper.c:2898 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(vm_call_cfunc_with_frame) vm_insnhelper.c:2900 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(vm_sendish+0x366) [0x7faa0e3dc4e6] vm_insnhelper.c:4499 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(vm_exec_core+0x10d) [0x7faa0e3df3cd] insns.def:770 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(rb_vm_exec+0x182) [0x7faa0e3e4812] vm.c:2163 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(thread_do_start_proc+0x2a9) [0x7faa0e39db19] thread.c:725 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(thread_do_start+0x66) [0x7faa0e39e057] thread.c:766 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(thread_start_func_2) thread.c:822 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(register_cached_thread_and_wait+0x0) [0x7faa0e39e9ca] thread_pthread.c:994 
 /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0(thread_start_func_1) thread_pthread.c:1001 
 /lib64/libpthread.so.0(start_thread+0xe9) [0x7faa0e0eb3f9] 
 /lib64/libc.so.6(clone+0x43) [0x7faa0de84b53] 

 -- Other runtime information ----------------------------------------------- 

 * Loaded script: ractor.rb 

 * Loaded features: 

     0 enumerator.so 
     1 thread.rb 
     2 rational.so 
     3 complex.so 
     4 ruby2_keywords.rb 
     5 /home/fidalgo/.rbenv/versions/3.0.0/lib/ruby/3.0.0/x86_64-linux/enc/encdb.so 
     6 /home/fidalgo/.rbenv/versions/3.0.0/lib/ruby/3.0.0/x86_64-linux/enc/trans/transdb.so 
     7 /home/fidalgo/.rbenv/versions/3.0.0/lib/ruby/3.0.0/x86_64-linux/rbconfig.rb 
     8 /home/fidalgo/.rbenv/versions/3.0.0/lib/ruby/3.0.0/rubygems/compatibility.rb 
     9 /home/fidalgo/.rbenv/versions/3.0.0/lib/ruby/3.0.0/rubygems/defaults.rb 
    10 /home/fidalgo/.rbenv/versions/3.0.0/lib/ruby/3.0.0/rubygems/deprecate.rb 
    11 /home/fidalgo/.rbenv/versions/3.0.0/lib/ruby/3.0.0/rubygems/errors.rb 
    12 /home/fidalgo/.rbenv/versions/3.0.0/lib/ruby/3.0.0/rubygems/exceptions.rb 
    13 /home/fidalgo/.rbenv/versions/3.0.0/lib/ruby/3.0.0/rubygems/basic_specification.rb 
    14 /home/fidalgo/.rbenv/versions/3.0.0/lib/ruby/3.0.0/rubygems/stub_specification.rb 
    15 /home/fidalgo/.rbenv/versions/3.0.0/lib/ruby/3.0.0/rubygems/text.rb 
    16 /home/fidalgo/.rbenv/versions/3.0.0/lib/ruby/3.0.0/rubygems/user_interaction.rb 
    17 /home/fidalgo/.rbenv/versions/3.0.0/lib/ruby/3.0.0/rubygems/specification_policy.rb 
    18 /home/fidalgo/.rbenv/versions/3.0.0/lib/ruby/3.0.0/rubygems/util/list.rb 
    19 /home/fidalgo/.rbenv/versions/3.0.0/lib/ruby/3.0.0/rubygems/platform.rb 
    20 /home/fidalgo/.rbenv/versions/3.0.0/lib/ruby/3.0.0/rubygems/version.rb 
    21 /home/fidalgo/.rbenv/versions/3.0.0/lib/ruby/3.0.0/rubygems/requirement.rb 
    22 /home/fidalgo/.rbenv/versions/3.0.0/lib/ruby/3.0.0/rubygems/specification.rb 
    23 /home/fidalgo/.rbenv/versions/3.0.0/lib/ruby/3.0.0/rubygems/util.rb 
    24 /home/fidalgo/.rbenv/versions/3.0.0/lib/ruby/3.0.0/rubygems/dependency.rb 
    25 /home/fidalgo/.rbenv/versions/3.0.0/lib/ruby/3.0.0/rubygems/core_ext/kernel_gem.rb 
    26 /home/fidalgo/.rbenv/versions/3.0.0/lib/ruby/3.0.0/x86_64-linux/monitor.so 
    27 /home/fidalgo/.rbenv/versions/3.0.0/lib/ruby/3.0.0/monitor.rb 
    28 /home/fidalgo/.rbenv/versions/3.0.0/lib/ruby/3.0.0/rubygems/core_ext/kernel_require.rb 
    29 /home/fidalgo/.rbenv/versions/3.0.0/lib/ruby/3.0.0/rubygems/core_ext/kernel_warn.rb 
    30 /home/fidalgo/.rbenv/versions/3.0.0/lib/ruby/3.0.0/rubygems.rb 
    31 /home/fidalgo/.rbenv/versions/3.0.0/lib/ruby/3.0.0/rubygems/path_support.rb 
    32 /home/fidalgo/.rbenv/versions/3.0.0/lib/ruby/3.0.0/did_you_mean/version.rb 
    33 /home/fidalgo/.rbenv/versions/3.0.0/lib/ruby/3.0.0/did_you_mean/core_ext/name_error.rb 
    34 /home/fidalgo/.rbenv/versions/3.0.0/lib/ruby/3.0.0/did_you_mean/levenshtein.rb 
    35 /home/fidalgo/.rbenv/versions/3.0.0/lib/ruby/3.0.0/did_you_mean/jaro_winkler.rb 
    36 /home/fidalgo/.rbenv/versions/3.0.0/lib/ruby/3.0.0/did_you_mean/spell_checker.rb 
    37 /home/fidalgo/.rbenv/versions/3.0.0/lib/ruby/3.0.0/did_you_mean/spell_checkers/name_error_checkers/class_name_checker.rb 
    38 /home/fidalgo/.rbenv/versions/3.0.0/lib/ruby/3.0.0/did_you_mean/spell_checkers/name_error_checkers/variable_name_checker.rb 
    39 /home/fidalgo/.rbenv/versions/3.0.0/lib/ruby/3.0.0/did_you_mean/spell_checkers/name_error_checkers.rb 
    40 /home/fidalgo/.rbenv/versions/3.0.0/lib/ruby/3.0.0/did_you_mean/spell_checkers/method_name_checker.rb 
    41 /home/fidalgo/.rbenv/versions/3.0.0/lib/ruby/3.0.0/did_you_mean/spell_checkers/key_error_checker.rb 
    42 /home/fidalgo/.rbenv/versions/3.0.0/lib/ruby/3.0.0/did_you_mean/spell_checkers/null_checker.rb 
    43 /home/fidalgo/.rbenv/versions/3.0.0/lib/ruby/3.0.0/did_you_mean/tree_spell_checker.rb 
    44 /home/fidalgo/.rbenv/versions/3.0.0/lib/ruby/3.0.0/did_you_mean/spell_checkers/require_path_checker.rb 
    45 /home/fidalgo/.rbenv/versions/3.0.0/lib/ruby/3.0.0/did_you_mean/formatters/plain_formatter.rb 
    46 /home/fidalgo/.rbenv/versions/3.0.0/lib/ruby/3.0.0/did_you_mean.rb 

 * Process memory map: 

 00400000-00401000 r--p 00000000 fd:03 17434847                             /home/fidalgo/.rbenv/versions/3.0.0/bin/ruby 
 00401000-00402000 r-xp 00001000 fd:03 17434847                             /home/fidalgo/.rbenv/versions/3.0.0/bin/ruby 
 00402000-00403000 r--p 00002000 fd:03 17434847                             /home/fidalgo/.rbenv/versions/3.0.0/bin/ruby 
 00403000-00404000 r--p 00002000 fd:03 17434847                             /home/fidalgo/.rbenv/versions/3.0.0/bin/ruby 
 00404000-00405000 rw-p 00003000 fd:03 17434847                             /home/fidalgo/.rbenv/versions/3.0.0/bin/ruby 
 01fa1000-10e06000 rw-p 00000000 00:00 0                                    [heap] 
 7fa9d0000000-7fa9d0f89000 rw-p 00000000 00:00 0  
 7fa9d0f89000-7fa9d4000000 ---p 00000000 00:00 0  
 7fa9d8000000-7fa9d8821000 rw-p 00000000 00:00 0  
 7fa9d8821000-7fa9dc000000 ---p 00000000 00:00 0  
 7fa9dc000000-7fa9dc021000 rw-p 00000000 00:00 0  
 7fa9dc021000-7fa9e0000000 ---p 00000000 00:00 0  
 7fa9e0000000-7fa9e1971000 rw-p 00000000 00:00 0  
 7fa9e1971000-7fa9e4000000 ---p 00000000 00:00 0  
 7fa9e4000000-7fa9e4afc000 rw-p 00000000 00:00 0  
 7fa9e4afc000-7fa9e8000000 ---p 00000000 00:00 0  
 7fa9e8000000-7fa9eab79000 rw-p 00000000 00:00 0  
 7fa9eab79000-7fa9ec000000 ---p 00000000 00:00 0  
 7fa9ec000000-7fa9edc05000 rw-p 00000000 00:00 0  
 7fa9edc05000-7fa9f0000000 ---p 00000000 00:00 0  
 7fa9f0000000-7fa9f3ac1000 rw-p 00000000 00:00 0  
 7fa9f3ac1000-7fa9f4000000 ---p 00000000 00:00 0  
 7fa9f6ab6000-7fa9f6dc9000 r--s 00000000 fd:01 3409179                      /usr/lib64/libc-2.32.so 
 7fa9f6dc9000-7fa9f79fd000 r--s 00000000 fd:03 17434849                     /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0.0 
 7fa9f79fd000-7fa9f79fe000 ---p 00000000 00:00 0  
 7fa9f79fe000-7fa9f7bfe000 rw-p 00000000 00:00 0  
 7fa9f7bfe000-7fa9f7bff000 ---p 00000000 00:00 0  
 7fa9f7bff000-7fa9f7dff000 rw-p 00000000 00:00 0  
 7fa9f7dff000-7fa9f7e00000 ---p 00000000 00:00 0  
 7fa9f7e00000-7fa9f8000000 rw-p 00000000 00:00 0  
 7fa9f8000000-7fa9fbffd000 rw-p 00000000 00:00 0  
 7fa9fbffd000-7fa9fc000000 ---p 00000000 00:00 0  
 7fa9fc0d2000-7fa9fc0d3000 ---p 00000000 00:00 0  
 7fa9fc0d3000-7fa9fc2d3000 rw-p 00000000 00:00 0  
 7fa9fc2d3000-7fa9fc2d4000 ---p 00000000 00:00 0  
 7fa9fc2d4000-7fa9fc4d4000 rw-p 00000000 00:00 0  
 7fa9fc6d4000-7fa9fc6d5000 ---p 00000000 00:00 0  
 7fa9fc6d5000-7fa9fcadb000 rw-p 00000000 00:00 0  
 7fa9fcadb000-7fa9fcadc000 ---p 00000000 00:00 0  
 7fa9fcadc000-7fa9fccdc000 rw-p 00000000 00:00 0  
 7fa9fccdc000-7fa9fcedd000 rw-p 00000000 00:00 0  
 7fa9fcfe7000-7fa9fd032000 r--s 00000000 fd:01 3418677                      /usr/lib64/libpthread-2.32.so 
 7fa9fd032000-7fa9fd069000 r--s 00000000 fd:03 17434847                     /home/fidalgo/.rbenv/versions/3.0.0/bin/ruby 
 7fa9fd069000-7fa9fd06c000 r--p 00000000 fd:01 3432683                      /usr/lib64/libgcc_s-10-20201125.so.1 
 7fa9fd06c000-7fa9fd07e000 r-xp 00003000 fd:01 3432683                      /usr/lib64/libgcc_s-10-20201125.so.1 
 7fa9fd07e000-7fa9fd082000 r--p 00015000 fd:01 3432683                      /usr/lib64/libgcc_s-10-20201125.so.1 
 7fa9fd082000-7fa9fd083000 r--p 00018000 fd:01 3432683                      /usr/lib64/libgcc_s-10-20201125.so.1 
 7fa9fd083000-7fa9fd084000 rw-p 00019000 fd:01 3432683                      /usr/lib64/libgcc_s-10-20201125.so.1 
 7fa9fd0a0000-7fa9fd2a6000 rw-p 00000000 00:00 0  
 7fa9fd2a6000-7fa9fd2a7000 ---p 00000000 00:00 0  
 7fa9fd2a7000-7fa9fd348000 rw-p 00000000 00:00 0  
 7fa9fd348000-7fa9fd349000 ---p 00000000 00:00 0  
 7fa9fd349000-7fa9fd3ea000 rw-p 00000000 00:00 0  
 7fa9fd3ea000-7fa9fd3eb000 ---p 00000000 00:00 0  
 7fa9fd3eb000-7fa9fd48c000 rw-p 00000000 00:00 0  
 7fa9fd48c000-7fa9fd48d000 ---p 00000000 00:00 0  
 7fa9fd48d000-7fa9fd52e000 rw-p 00000000 00:00 0  
 7fa9fd52e000-7fa9fd52f000 ---p 00000000 00:00 0  
 7fa9fd52f000-7fa9fd5d0000 rw-p 00000000 00:00 0  
 7fa9fd5d0000-7fa9fd5d1000 ---p 00000000 00:00 0  
 7fa9fd5d1000-7fa9fd672000 rw-p 00000000 00:00 0  
 7fa9fd672000-7fa9fd673000 ---p 00000000 00:00 0  
 7fa9fd673000-7fa9fd714000 rw-p 00000000 00:00 0  
 7fa9fd714000-7fa9fd715000 ---p 00000000 00:00 0  
 7fa9fd715000-7fa9fd7b6000 rw-p 00000000 00:00 0  
 7fa9fd7b6000-7fa9fd7b7000 ---p 00000000 00:00 0  
 7fa9fd7b7000-7fa9fd858000 rw-p 00000000 00:00 0  
 7fa9fd858000-7fa9fd859000 ---p 00000000 00:00 0  
 7fa9fd859000-7fa9fd8fa000 rw-p 00000000 00:00 0  
 7fa9fd8fa000-7fa9fd8fb000 ---p 00000000 00:00 0  
 7fa9fd8fb000-7fa9fd99c000 rw-p 00000000 00:00 0  
 7fa9fd99c000-7fa9fd99d000 ---p 00000000 00:00 0  
 7fa9fd99d000-7fa9fda3e000 rw-p 00000000 00:00 0  
 7fa9fda3e000-7fa9fda3f000 ---p 00000000 00:00 0  
 7fa9fda3f000-7fa9fdae0000 rw-p 00000000 00:00 0  
 7fa9fdae0000-7fa9fdae1000 ---p 00000000 00:00 0  
 7fa9fdae1000-7fa9fdb82000 rw-p 00000000 00:00 0  
 7fa9fdb82000-7fa9fdb83000 ---p 00000000 00:00 0  
 7fa9fdb83000-7fa9fdc24000 rw-p 00000000 00:00 0  
 7fa9fdc24000-7fa9fdc25000 ---p 00000000 00:00 0  
 7fa9fdc25000-7fa9fdcc6000 rw-p 00000000 00:00 0  
 7fa9fdcc6000-7fa9fdcc7000 ---p 00000000 00:00 0  
 7fa9fdcc7000-7fa9fdd68000 rw-p 00000000 00:00 0  
 7fa9fdd68000-7fa9fdd69000 ---p 00000000 00:00 0  
 7fa9fdd69000-7fa9fde0a000 rw-p 00000000 00:00 0  
 7fa9fde0a000-7fa9fde0b000 ---p 00000000 00:00 0  
 7fa9fde0b000-7fa9fdeac000 rw-p 00000000 00:00 0  
 7fa9fdeac000-7fa9fdead000 ---p 00000000 00:00 0  
 7fa9fdead000-7fa9fdf4e000 rw-p 00000000 00:00 0  
 7fa9fdf4e000-7fa9fdf4f000 ---p 00000000 00:00 0  
 7fa9fdf4f000-7fa9fdff0000 rw-p 00000000 00:00 0  
 7fa9fdff0000-7fa9fdff1000 ---p 00000000 00:00 0  
 7fa9fdff1000-7fa9fe092000 rw-p 00000000 00:00 0  
 7fa9fe092000-7fa9fe093000 ---p 00000000 00:00 0  
 7fa9fe093000-7fa9fe134000 rw-p 00000000 00:00 0  
 7fa9fe134000-7fa9fe135000 ---p 00000000 00:00 0  
 7fa9fe135000-7fa9fe1d6000 rw-p 00000000 00:00 0  
 7fa9fe1d6000-7fa9fe1d7000 ---p 00000000 00:00 0  
 7fa9fe1d7000-7fa9fe278000 rw-p 00000000 00:00 0  
 7fa9fe278000-7fa9fe279000 ---p 00000000 00:00 0  
 7fa9fe279000-7fa9fe31a000 rw-p 00000000 00:00 0  
 7fa9fe31a000-7fa9fe31b000 ---p 00000000 00:00 0  
 7fa9fe31b000-7fa9fe3bc000 rw-p 00000000 00:00 0  
 7fa9fe3bc000-7fa9fe3bd000 ---p 00000000 00:00 0  
 7fa9fe3bd000-7fa9fe45e000 rw-p 00000000 00:00 0  
 7fa9fe45e000-7fa9fe45f000 ---p 00000000 00:00 0  
 7fa9fe45f000-7fa9fe500000 rw-p 00000000 00:00 0  
 7fa9fe500000-7fa9fe501000 ---p 00000000 00:00 0  
 7fa9fe501000-7fa9fe5a2000 rw-p 00000000 00:00 0  
 7fa9fe5a2000-7fa9fe5a3000 ---p 00000000 00:00 0  
 7fa9fe5a3000-7fa9fe644000 rw-p 00000000 00:00 0  
 7fa9fe644000-7fa9fe645000 ---p 00000000 00:00 0  
 7fa9fe645000-7faa00851000 rw-p 00000000 00:00 0  
 7faa00851000-7faa0dd81000 r--p 00000000 fd:01 3410919                      /usr/lib/locale/locale-archive 
 7faa0dd81000-7faa0dd83000 rw-p 00000000 00:00 0  
 7faa0dd83000-7faa0dda9000 r--p 00000000 fd:01 3409179                      /usr/lib64/libc-2.32.so 
 7faa0dda9000-7faa0def8000 r-xp 00026000 fd:01 3409179                      /usr/lib64/libc-2.32.so 
 7faa0def8000-7faa0df43000 r--p 00175000 fd:01 3409179                      /usr/lib64/libc-2.32.so 
 7faa0df43000-7faa0df44000 ---p 001c0000 fd:01 3409179                      /usr/lib64/libc-2.32.so 
 7faa0df44000-7faa0df47000 r--p 001c0000 fd:01 3409179                      /usr/lib64/libc-2.32.so 
 7faa0df47000-7faa0df4a000 rw-p 001c3000 fd:01 3409179                      /usr/lib64/libc-2.32.so 
 7faa0df4a000-7faa0df4e000 rw-p 00000000 00:00 0  
 7faa0df4e000-7faa0df5d000 r--p 00000000 fd:01 3418672                      /usr/lib64/libm-2.32.so 
 7faa0df5d000-7faa0dff9000 r-xp 0000f000 fd:01 3418672                      /usr/lib64/libm-2.32.so 
 7faa0dff9000-7faa0e092000 r--p 000ab000 fd:01 3418672                      /usr/lib64/libm-2.32.so 
 7faa0e092000-7faa0e093000 r--p 00143000 fd:01 3418672                      /usr/lib64/libm-2.32.so 
 7faa0e093000-7faa0e094000 rw-p 00144000 fd:01 3418672                      /usr/lib64/libm-2.32.so 
 7faa0e094000-7faa0e096000 rw-p 00000000 00:00 0  
 7faa0e096000-7faa0e098000 r--p 00000000 fd:01 3434307                      /usr/lib64/libcrypt.so.2.0.0 
 7faa0e098000-7faa0e0ac000 r-xp 00002000 fd:01 3434307                      /usr/lib64/libcrypt.so.2.0.0 
 7faa0e0ac000-7faa0e0c5000 r--p 00016000 fd:01 3434307                      /usr/lib64/libcrypt.so.2.0.0 
 7faa0e0c5000-7faa0e0c6000 ---p 0002f000 fd:01 3434307                      /usr/lib64/libcrypt.so.2.0.0 
 7faa0e0c6000-7faa0e0c7000 r--p 0002f000 fd:01 3434307                      /usr/lib64/libcrypt.so.2.0.0 
 7faa0e0c7000-7faa0e0d0000 rw-p 00000000 00:00 0  
 7faa0e0d0000-7faa0e0d2000 r--p 00000000 fd:01 3418670                      /usr/lib64/libdl-2.32.so 
 7faa0e0d2000-7faa0e0d4000 r-xp 00002000 fd:01 3418670                      /usr/lib64/libdl-2.32.so 
 7faa0e0d4000-7faa0e0d5000 r--p 00004000 fd:01 3418670                      /usr/lib64/libdl-2.32.so 
 7faa0e0d5000-7faa0e0d6000 r--p 00004000 fd:01 3418670                      /usr/lib64/libdl-2.32.so 
 7faa0e0d6000-7faa0e0d7000 rw-p 00000000 00:00 0  
 7faa0e0d7000-7faa0e0da000 r--p 00000000 fd:01 3418687                      /usr/lib64/librt-2.32.so 
 7faa0e0da000-7faa0e0de000 r-xp 00003000 fd:01 3418687                      /usr/lib64/librt-2.32.so 
 7faa0e0de000-7faa0e0e0000 r--p 00007000 fd:01 3418687                      /usr/lib64/librt-2.32.so 
 7faa0e0e0000-7faa0e0e1000 r--p 00008000 fd:01 3418687                      /usr/lib64/librt-2.32.so 
 7faa0e0e1000-7faa0e0e2000 rw-p 00009000 fd:01 3418687                      /usr/lib64/librt-2.32.so 
 7faa0e0e2000-7faa0e0e9000 r--p 00000000 fd:01 3418677                      /usr/lib64/libpthread-2.32.so 
 7faa0e0e9000-7faa0e0f9000 r-xp 00007000 fd:01 3418677                      /usr/lib64/libpthread-2.32.so 
 7faa0e0f9000-7faa0e0fe000 r--p 00017000 fd:01 3418677                      /usr/lib64/libpthread-2.32.so 
 7faa0e0fe000-7faa0e0ff000 r--p 0001b000 fd:01 3418677                      /usr/lib64/libpthread-2.32.so 
 7faa0e0ff000-7faa0e100000 rw-p 0001c000 fd:01 3418677                      /usr/lib64/libpthread-2.32.so 
 7faa0e100000-7faa0e104000 rw-p 00000000 00:00 0  
 7faa0e104000-7faa0e107000 r--p 00000000 fd:01 3429779                      /usr/lib64/libz.so.1.2.11 
 7faa0e107000-7faa0e115000 r-xp 00003000 fd:01 3429779                      /usr/lib64/libz.so.1.2.11 
 7faa0e115000-7faa0e11b000 r--p 00011000 fd:01 3429779                      /usr/lib64/libz.so.1.2.11 
 7faa0e11b000-7faa0e11c000 ---p 00017000 fd:01 3429779                      /usr/lib64/libz.so.1.2.11 
 7faa0e11c000-7faa0e11d000 r--p 00017000 fd:01 3429779                      /usr/lib64/libz.so.1.2.11 
 7faa0e11d000-7faa0e11e000 rw-p 00000000 00:00 0  
 7faa0e123000-7faa0e124000 r--p 00000000 fd:03 17434925                     /home/fidalgo/.rbenv/versions/3.0.0/lib/ruby/3.0.0/x86_64-linux/monitor.so 
 7faa0e124000-7faa0e125000 r-xp 00001000 fd:03 17434925                     /home/fidalgo/.rbenv/versions/3.0.0/lib/ruby/3.0.0/x86_64-linux/monitor.so 
 7faa0e125000-7faa0e126000 r--p 00002000 fd:03 17434925                     /home/fidalgo/.rbenv/versions/3.0.0/lib/ruby/3.0.0/x86_64-linux/monitor.so 
 7faa0e126000-7faa0e127000 r--p 00002000 fd:03 17434925                     /home/fidalgo/.rbenv/versions/3.0.0/lib/ruby/3.0.0/x86_64-linux/monitor.so 
 7faa0e127000-7faa0e128000 rw-p 00003000 fd:03 17434925                     /home/fidalgo/.rbenv/versions/3.0.0/lib/ruby/3.0.0/x86_64-linux/monitor.so 
 7faa0e128000-7faa0e129000 r--p 00000000 fd:03 18225989                     /home/fidalgo/.rbenv/versions/3.0.0/lib/ruby/3.0.0/x86_64-linux/enc/trans/transdb.so 
 7faa0e129000-7faa0e12b000 r-xp 00001000 fd:03 18225989                     /home/fidalgo/.rbenv/versions/3.0.0/lib/ruby/3.0.0/x86_64-linux/enc/trans/transdb.so 
 7faa0e12b000-7faa0e12c000 r--p 00003000 fd:03 18225989                     /home/fidalgo/.rbenv/versions/3.0.0/lib/ruby/3.0.0/x86_64-linux/enc/trans/transdb.so 
 7faa0e12c000-7faa0e12d000 r--p 00003000 fd:03 18225989                     /home/fidalgo/.rbenv/versions/3.0.0/lib/ruby/3.0.0/x86_64-linux/enc/trans/transdb.so 
 7faa0e12d000-7faa0e12e000 rw-p 00004000 fd:03 18225989                     /home/fidalgo/.rbenv/versions/3.0.0/lib/ruby/3.0.0/x86_64-linux/enc/trans/transdb.so 
 7faa0e12e000-7faa0e12f000 r--p 00000000 fd:03 17697632                     /home/fidalgo/.rbenv/versions/3.0.0/lib/ruby/3.0.0/x86_64-linux/enc/encdb.so 
 7faa0e12f000-7faa0e130000 r-xp 00001000 fd:03 17697632                     /home/fidalgo/.rbenv/versions/3.0.0/lib/ruby/3.0.0/x86_64-linux/enc/encdb.so 
 7faa0e130000-7faa0e131000 r--p 00002000 fd:03 17697632                     /home/fidalgo/.rbenv/versions/3.0.0/lib/ruby/3.0.0/x86_64-linux/enc/encdb.so 
 7faa0e131000-7faa0e132000 r--p 00002000 fd:03 17697632                     /home/fidalgo/.rbenv/versions/3.0.0/lib/ruby/3.0.0/x86_64-linux/enc/encdb.so 
 7faa0e132000-7faa0e133000 rw-p 00003000 fd:03 17697632                     /home/fidalgo/.rbenv/versions/3.0.0/lib/ruby/3.0.0/x86_64-linux/enc/encdb.so 
 7faa0e133000-7faa0e13a000 r--s 00000000 fd:01 3802244                      /usr/lib64/gconv/gconv-modules.cache 
 7faa0e13a000-7faa0e16b000 r--p 00000000 fd:03 17434849                     /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0.0 
 7faa0e16b000-7faa0e407000 r-xp 00031000 fd:03 17434849                     /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0.0 
 7faa0e407000-7faa0e50f000 r--p 002cd000 fd:03 17434849                     /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0.0 
 7faa0e50f000-7faa0e510000 ---p 003d5000 fd:03 17434849                     /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0.0 
 7faa0e510000-7faa0e517000 r--p 003d5000 fd:03 17434849                     /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0.0 
 7faa0e517000-7faa0e51b000 rw-p 003dc000 fd:03 17434849                     /home/fidalgo/.rbenv/versions/3.0.0/lib/libruby.so.3.0.0 
 7faa0e51b000-7faa0e52d000 rw-p 00000000 00:00 0  
 7faa0e52d000-7faa0e531000 r--p 00000000 00:00 0                            [vvar] 
 7faa0e531000-7faa0e533000 r-xp 00000000 00:00 0                            [vdso] 
 7faa0e533000-7faa0e534000 r--p 00000000 fd:01 3413984                      /usr/lib64/ld-2.32.so 
 7faa0e534000-7faa0e555000 r-xp 00001000 fd:01 3413984                      /usr/lib64/ld-2.32.so 
 7faa0e555000-7faa0e55e000 r--p 00022000 fd:01 3413984                      /usr/lib64/ld-2.32.so 
 7faa0e55e000-7faa0e55f000 r--p 0002a000 fd:01 3413984                      /usr/lib64/ld-2.32.so 
 7faa0e55f000-7faa0e561000 rw-p 0002b000 fd:01 3413984                      /usr/lib64/ld-2.32.so 
 7ffd9d9fc000-7ffd9e1fb000 rw-p 00000000 00:00 0                            [stack] 
 ffffffffff600000-ffffffffff601000 r-xp 00000000 00:00 0                    [vsyscall] 


 Aborted (core dumped) 
 ``` 

 And here success with debugging: 
 ``` 
 ruby -d ractor.rb  
 Exception `LoadError' at /home/fidalgo/.rbenv/versions/3.0.0/lib/ruby/3.0.0/rubygems.rb:1348 - cannot load such file -- rubygems/defaults/operating_system 
 Exception `LoadError' at /home/fidalgo/.rbenv/versions/3.0.0/lib/ruby/3.0.0/rubygems.rb:1356 - cannot load such file -- rubygems/defaults/ruby 
 Combinations size:2118760 
 <internal:ractor>:267: warning: Ractor is experimental, and the behavior may change in future versions of Ruby! Also there are many implementation issues. 
 Received combination size:264845 
 Received combination size:264845 
 Received combination size:264845 
 Received combination size:264845 
 Received combination size:264845 
 Received combination size:264845 
 Received combination size:264845 
 Received combination size:264845 
 476330 
 ``` 

Back