Closed hms closed 1 month ago
At the very least the error output is needed.
I can reproduce it on Ruby 3.3.4. My immediate reaction is that, given this doesn't involve a native extension, this is a Ruby bug.
❯ irb
irb(main):001> require 'concurrent-ruby'
irb(main):002> GC.auto_compact # is false
irb(main):003> GC.start
irb(main):004>
irb(main):005> futures = 100_000
irb(main):006> pool = Concurrent::FixedThreadPool.new(10)
irb(main):007>
irb(main):008> counter = Concurrent::AtomicFixnum.new(0)
irb(main):009>
irb(main):010* 0.upto(futures) do
irb(main):011* pool.post do
irb(main):012* Concurrent::Promises.future(counter) do
irb(main):013* sleep rand(10)
irb(main):014* counter.increment
irb(main):015* end
irb(main):016* end
irb(main):017> end
irb(main):018>
irb(main):019* while counter.value < futures
irb(main):020* puts counter.value
irb(main):021* sleep 1
irb(main):022* GC.start
irb(main):023> end
irb(main):024> pool.shutdown
0
339
862
1686
2658
3765
5919
7675
9459
11272
13046
15381
16614
18934
20035
21870
23345
25342
27485
30657
/Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/synchronization/mutex_lockable_object.rb:48: [BUG] Segmentation fault at 0x0000000000000008
ruby 3.3.4 (2024-07-09 revision be1089c8ec) [arm64-darwin23]
-- Crash Report log information --------------------------------------------
See Crash Report log file in one of the following locations:
* ~/Library/Logs/DiagnosticReports
* /Library/Logs/DiagnosticReports
for more details.
Don't forget to include the above Crash Report log file in bug reports.
-- Control frame information -----------------------------------------------
c:0010 p:---- s:0048 e:000047 CFUNC :synchronize
c:0009 p:0016 s:0044 e:000043 METHOD /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/synchroni
c:0008 p:0004 s:0040 e:000039 METHOD /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/executor/
c:0007 p:0013 s:0036 e:000035 METHOD /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/executor/
c:0006 p:0041 s:0028 e:000027 BLOCK /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/executor/
c:0005 p:0018 s:0022 e:000021 METHOD <internal:kernel>:187
c:0004 p:0004 s:0017 e:000016 BLOCK /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/executor/ [FINISH]
c:0003 p:---- s:0014 e:000013 CFUNC :catch
c:0002 p:0006 s:0009 e:000008 BLOCK /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/executor/ [FINISH]
c:0001 p:---- s:0003 e:000002 DUMMY [FINISH]
-- Ruby level backtrace information ----------------------------------------
/Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in `block in create_worker'
/Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in `catch'
/Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:341:in `block (2 levels) in create_worker'
<internal:kernel>:187:in `loop'
/Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:350:in `block (3 levels) in create_worker'
/Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:360:in `run_task'
/Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:114:in `worker_task_completed'
/Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/synchronization/mutex_lockable_object.rb:48:in `synchronize'
/Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/synchronization/mutex_lockable_object.rb:48:in `synchronize'
-- Threading information ---------------------------------------------------
Total ractor count: 1
Ruby thread count for this ractor: 16383
-- Machine register context ------------------------------------------------
x0: 0x0000000000000000 x1: 0x0000000000000000 x2: 0x0000000160b07cb0
x3: 0x0000000000000000 x4: 0x0000000160b07920 x5: 0x00000000000000a0
x6: 0x0000000000000000 x7: 0x0000000000000000 x18: 0x0000000000000000
x19: 0x0000000160b07920 x20: 0x0000000160b07a40 x21: 0x0000000128705938
x22: 0x0000000160b07920 x23: 0x0000000000000001 x24: 0x0000000000000024
x25: 0x0000000104d5e5ec x26: 0x00000003c9aea308 x27: 0x000060000060e790
x28: 0x0000000000000000 lr: 0x0000000104d5f480 fp: 0x00000003c9aea2e0
sp: 0x00000003c9aea2b0
-- C level backtrace information -------------------------------------------
/Users/bensheldon/.rbenv/versions/3.3.4/lib/libruby.3.3.dylib(rb_vm_bugreport+0xb4c) [0x104db61c4]
/Users/bensheldon/.rbenv/versions/3.3.4/lib/libruby.3.3.dylib(rb_bug_for_fatal_signal+0x100) [0x104bf7e98]
/Users/bensheldon/.rbenv/versions/3.3.4/lib/libruby.3.3.dylib(sig_do_nothing+0x0) [0x104d1d860]
/usr/lib/system/libsystem_platform.dylib(_sigtramp+0x38) [0x195628184]
/Users/bensheldon/.rbenv/versions/3.3.4/lib/libruby.3.3.dylib(thread_sched_to_waiting_until_wakeup+0x70) [0x104d5f480]
/Users/bensheldon/.rbenv/versions/3.3.4/lib/libruby.3.3.dylib(do_mutex_lock+0x148) [0x104d546a4]
/Users/bensheldon/.rbenv/versions/3.3.4/lib/libruby.3.3.dylib(rb_mutex_synchronize_m+0x24) [0x104d62610]
/Users/bensheldon/.rbenv/versions/3.3.4/lib/libruby.3.3.dylib(vm_call_cfunc_with_frame_+0xf0) [0x104da8e04]
/Users/bensheldon/.rbenv/versions/3.3.4/lib/libruby.3.3.dylib(vm_exec_core+0x1dc0) [0x104d8e87c]
/Users/bensheldon/.rbenv/versions/3.3.4/lib/libruby.3.3.dylib(rb_vm_exec+0x13c) [0x104d8ba84]
/Users/bensheldon/.rbenv/versions/3.3.4/lib/libruby.3.3.dylib(invoke_block_from_c_bh+0x368) [0x104db0534]
/Users/bensheldon/.rbenv/versions/3.3.4/lib/libruby.3.3.dylib(catch_i+0x6c) [0x104dafcac]
/Users/bensheldon/.rbenv/versions/3.3.4/lib/libruby.3.3.dylib(vm_catch_protect+0xe8) [0x104d9bd94]
/Users/bensheldon/.rbenv/versions/3.3.4/lib/libruby.3.3.dylib(rb_f_catch+0x70) [0x104d9c60c]
/Users/bensheldon/.rbenv/versions/3.3.4/lib/libruby.3.3.dylib(vm_call_cfunc_with_frame_+0xf0) [0x104da8e04]
/Users/bensheldon/.rbenv/versions/3.3.4/lib/libruby.3.3.dylib(vm_exec_core+0x1dc0) [0x104d8e87c]
/Users/bensheldon/.rbenv/versions/3.3.4/lib/libruby.3.3.dylib(rb_vm_exec+0x13c) [0x104d8ba84]
/Users/bensheldon/.rbenv/versions/3.3.4/lib/libruby.3.3.dylib(vm_invoke_proc+0x2c0) [0x104d9e82c]
/Users/bensheldon/.rbenv/versions/3.3.4/lib/libruby.3.3.dylib(thread_do_start_proc+0x29c) [0x104d612ec]
/Users/bensheldon/.rbenv/versions/3.3.4/lib/libruby.3.3.dylib(thread_start_func_2+0x328) [0x104d60978]
/Users/bensheldon/.rbenv/versions/3.3.4/lib/libruby.3.3.dylib(call_thread_start_func_2+0x9c) [0x104d60620]
/Users/bensheldon/.rbenv/versions/3.3.4/lib/libruby.3.3.dylib(nt_start+0x1c8) [0x104d60530]
/usr/lib/system/libsystem_pthread.dylib(_pthread_start+0x88) [0x1955f32e4]
-- Other runtime information -----------------------------------------------
* Loaded script: irb
* Loaded features:
0 enumerator.so
1 thread.rb
2 fiber.so
3 rational.so
4 complex.so
5 ruby2_keywords.rb
6 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/arm64-darwin23/enc/encdb.bundle
7 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/arm64-darwin23/enc/trans/transdb.bundle
8 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/arm64-darwin23/rbconfig.rb
9 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/rubygems/compatibility.rb
10 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/rubygems/defaults.rb
11 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/rubygems/deprecate.rb
12 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/rubygems/errors.rb
13 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/rubygems/unknown_command_spell_checker.rb
14 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/rubygems/exceptions.rb
15 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/rubygems/basic_specification.rb
16 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/rubygems/stub_specification.rb
17 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/rubygems/platform.rb
18 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/rubygems/specification_record.rb
19 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/rubygems/util/list.rb
20 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/rubygems/version.rb
21 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/rubygems/requirement.rb
22 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/rubygems/specification.rb
23 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/rubygems/util.rb
24 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/rubygems/dependency.rb
25 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/rubygems/core_ext/kernel_gem.rb
26 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/arm64-darwin23/monitor.bundle
27 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/monitor.rb
28 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/rubygems.rb
29 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/bundled_gems.rb
30 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/rubygems/path_support.rb
31 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/error_highlight/version.rb
32 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/error_highlight/base.rb
33 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/error_highlight/formatter.rb
34 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/error_highlight/core_ext.rb
35 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/error_highlight.rb
36 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/did_you_mean/version.rb
37 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/did_you_mean/core_ext/name_error.rb
38 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/did_you_mean/levenshtein.rb
39 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/did_you_mean/jaro_winkler.rb
40 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/did_you_mean/spell_checker.rb
41 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/did_you_mean/spell_checkers/name_error_checkers/class_name_checker.rb
42 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/did_you_mean/spell_checkers/name_error_checkers/variable_name_checker.rb
43 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/did_you_mean/spell_checkers/name_error_checkers.rb
44 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/did_you_mean/spell_checkers/method_name_checker.rb
45 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/did_you_mean/spell_checkers/key_error_checker.rb
46 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/did_you_mean/spell_checkers/null_checker.rb
47 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/did_you_mean/tree_spell_checker.rb
48 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/did_you_mean/spell_checkers/require_path_checker.rb
49 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/did_you_mean/spell_checkers/pattern_key_name_checker.rb
50 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/did_you_mean/formatter.rb
51 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/did_you_mean.rb
52 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/syntax_suggest/core_ext.rb
53 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/rubygems/vendor/tsort/lib/tsort.rb
54 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/rubygems/vendored_tsort.rb
55 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/rubygems/request_set/gem_dependency_api.rb
56 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/rubygems/request_set/lockfile/parser.rb
57 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/rubygems/request_set/lockfile/tokenizer.rb
58 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/rubygems/request_set/lockfile.rb
59 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/rubygems/request_set.rb
60 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/rubygems/vendor/molinillo/lib/molinillo/gem_metadata.rb
61 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/rubygems/vendor/molinillo/lib/molinillo/delegates/specification_provider.rb
62 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/rubygems/vendor/molinillo/lib/molinillo/errors.rb
63 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/rubygems/vendor/molinillo/lib/molinillo/dependency_graph/action.rb
64 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/rubygems/vendor/molinillo/lib/molinillo/dependency_graph/add_edge_no_circular.rb
65 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/rubygems/vendor/molinillo/lib/molinillo/dependency_graph/add_vertex.rb
66 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/rubygems/vendor/molinillo/lib/molinillo/dependency_graph/delete_edge.rb
67 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/rubygems/vendor/molinillo/lib/molinillo/dependency_graph/detach_vertex_named.rb
68 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/rubygems/vendor/molinillo/lib/molinillo/dependency_graph/set_payload.rb
69 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/rubygems/vendor/molinillo/lib/molinillo/dependency_graph/tag.rb
70 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/rubygems/vendor/molinillo/lib/molinillo/dependency_graph/log.rb
71 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/rubygems/vendor/molinillo/lib/molinillo/dependency_graph/vertex.rb
72 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/rubygems/vendor/molinillo/lib/molinillo/dependency_graph.rb
73 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/rubygems/vendor/molinillo/lib/molinillo/state.rb
74 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/rubygems/vendor/molinillo/lib/molinillo/modules/specification_provider.rb
75 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/rubygems/vendor/molinillo/lib/molinillo/delegates/resolution_state.rb
76 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/rubygems/vendor/molinillo/lib/molinillo/resolution.rb
77 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/rubygems/vendor/molinillo/lib/molinillo/resolver.rb
78 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/rubygems/vendor/molinillo/lib/molinillo/modules/ui.rb
79 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/rubygems/vendor/molinillo/lib/molinillo.rb
80 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/rubygems/vendored_molinillo.rb
81 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/rubygems/resolver/activation_request.rb
82 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/rubygems/resolver/conflict.rb
83 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/rubygems/resolver/dependency_request.rb
84 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/rubygems/resolver/requirement_list.rb
85 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/rubygems/resolver/stats.rb
86 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/rubygems/resolver/set.rb
87 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/rubygems/resolver/api_set.rb
88 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/rubygems/resolver/composed_set.rb
89 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/rubygems/resolver/best_set.rb
90 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/rubygems/resolver/current_set.rb
91 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/rubygems/resolver/git_set.rb
92 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/rubygems/resolver/index_set.rb
93 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/rubygems/resolver/installer_set.rb
94 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/rubygems/resolver/lock_set.rb
95 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/rubygems/resolver/vendor_set.rb
96 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/rubygems/resolver/source_set.rb
97 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/rubygems/resolver/specification.rb
98 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/rubygems/resolver/spec_specification.rb
99 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/rubygems/resolver/api_specification.rb
100 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/rubygems/resolver/git_specification.rb
101 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/rubygems/resolver/index_specification.rb
102 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/rubygems/resolver/installed_specification.rb
103 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/rubygems/resolver/local_specification.rb
104 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/rubygems/resolver/lock_specification.rb
105 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/rubygems/resolver/vendor_specification.rb
106 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/rubygems/resolver.rb
107 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/rubygems/text.rb
108 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/rubygems/source/git.rb
109 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/rubygems/source/installed.rb
110 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/rubygems/source/specific_file.rb
111 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/rubygems/source/local.rb
112 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/rubygems/source/lock.rb
113 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/rubygems/source/vendor.rb
114 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/rubygems/source.rb
115 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/set.rb
116 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/arm64-darwin23/ripper.bundle
117 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/ripper/core.rb
118 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/ripper/lexer.rb
119 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/ripper/filter.rb
120 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/ripper/sexp.rb
121 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/ripper.rb
122 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/io-console-0.7.2/lib/io/console.bundle
123 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/forwardable/impl.rb
124 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/forwardable.rb
125 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/reline-0.5.10/lib/reline/version.rb
126 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/reline-0.5.10/lib/reline/config.rb
127 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/reline-0.5.10/lib/reline/key_actor/base.rb
128 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/reline-0.5.10/lib/reline/key_actor/composite.rb
129 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/reline-0.5.10/lib/reline/key_actor/emacs.rb
130 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/reline-0.5.10/lib/reline/key_actor/vi_command.rb
131 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/reline-0.5.10/lib/reline/key_actor/vi_insert.rb
132 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/reline-0.5.10/lib/reline/key_actor.rb
133 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/reline-0.5.10/lib/reline/key_stroke.rb
134 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/reline-0.5.10/lib/reline/kill_ring.rb
135 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/reline-0.5.10/lib/reline/unicode/east_asian_width.rb
136 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/reline-0.5.10/lib/reline/unicode.rb
137 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/delegate.rb
138 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/fileutils.rb
139 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/arm64-darwin23/etc.bundle
140 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/tmpdir.rb
141 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/tempfile.rb
142 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/reline-0.5.10/lib/reline/line_editor.rb
143 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/reline-0.5.10/lib/reline/history.rb
144 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/fiddle-1.1.2/lib/fiddle.bundle
145 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/fiddle-1.1.2/lib/fiddle/closure.rb
146 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/fiddle-1.1.2/lib/fiddle/function.rb
147 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/fiddle-1.1.2/lib/fiddle/version.rb
148 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/fiddle-1.1.2/lib/fiddle.rb
149 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/fiddle-1.1.2/lib/fiddle/value.rb
150 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/fiddle-1.1.2/lib/fiddle/pack.rb
151 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/fiddle-1.1.2/lib/fiddle/struct.rb
152 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/fiddle-1.1.2/lib/fiddle/cparser.rb
153 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/fiddle-1.1.2/lib/fiddle/import.rb
154 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/reline-0.5.10/lib/reline/terminfo.rb
155 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/arm64-darwin23/io/wait.bundle
156 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/reline-0.5.10/lib/reline/io/dumb.rb
157 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/reline-0.5.10/lib/reline/io.rb
158 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/reline-0.5.10/lib/reline/face.rb
159 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/reline-0.5.10/lib/reline/io/ansi.rb
160 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/reline-0.5.10/lib/reline.rb
161 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/irb-1.14.0/lib/irb/init.rb
162 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/singleton.rb
163 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/irb-1.14.0/lib/irb/helper_method/base.rb
164 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/irb-1.14.0/lib/irb/helper_method/conf.rb
165 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/irb-1.14.0/lib/irb/helper_method.rb
166 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/irb-1.14.0/lib/irb/workspace.rb
167 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/irb-1.14.0/lib/irb/inspector.rb
168 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/irb-1.14.0/lib/irb/nesting_parser.rb
169 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/irb-1.14.0/lib/irb/ruby-lex.rb
170 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/irb-1.14.0/lib/irb/completion.rb
171 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/arm64-darwin23/pathname.bundle
172 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/pathname.rb
173 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/irb-1.14.0/lib/irb/history.rb
174 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/irb-1.14.0/lib/irb/input-method.rb
175 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/irb-1.14.0/lib/irb/output-method.rb
176 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/irb-1.14.0/lib/irb/context.rb
177 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/irb-1.14.0/lib/irb/command/base.rb
178 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/irb-1.14.0/lib/irb/command.rb
179 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/irb-1.14.0/lib/irb/command/internal_helpers.rb
180 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/irb-1.14.0/lib/irb/debug.rb
181 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/irb-1.14.0/lib/irb/command/debug.rb
182 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/irb-1.14.0/lib/irb/command/backtrace.rb
183 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/irb-1.14.0/lib/irb/command/break.rb
184 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/irb-1.14.0/lib/irb/command/catch.rb
185 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/irb-1.14.0/lib/irb/command/cd.rb
186 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/irb-1.14.0/lib/irb/ext/change-ws.rb
187 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/irb-1.14.0/lib/irb/command/chws.rb
188 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/irb-1.14.0/lib/irb/command/context.rb
189 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/irb-1.14.0/lib/irb/command/continue.rb
190 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/irb-1.14.0/lib/irb/command/delete.rb
191 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/irb-1.14.0/lib/irb/command/disable_irb.rb
192 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/shellwords.rb
193 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/irb-1.14.0/lib/irb/color.rb
194 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/irb-1.14.0/lib/irb/source_finder.rb
195 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/irb-1.14.0/lib/irb/command/edit.rb
196 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/irb-1.14.0/lib/irb/command/exit.rb
197 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/irb-1.14.0/lib/irb/command/finish.rb
198 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/irb-1.14.0/lib/irb/command/force_exit.rb
199 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/irb-1.14.0/lib/irb/command/help.rb
200 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/stringio-3.1.1/lib/stringio.bundle
201 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/irb-1.14.0/lib/irb/pager.rb
202 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/irb-1.14.0/lib/irb/command/history.rb
203 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/irb-1.14.0/lib/irb/command/info.rb
204 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/irb-1.14.0/lib/irb/command/irb_info.rb
205 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/irb-1.14.0/lib/irb/ext/loader.rb
206 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/irb-1.14.0/lib/irb/command/load.rb
207 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/irb-1.14.0/lib/irb/command/ls.rb
208 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/irb-1.14.0/lib/irb/command/measure.rb
209 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/irb-1.14.0/lib/irb/command/next.rb
210 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/irb-1.14.0/lib/irb/ext/workspaces.rb
211 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/irb-1.14.0/lib/irb/command/pushws.rb
212 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/irb-1.14.0/lib/irb/command/show_doc.rb
213 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/irb-1.14.0/lib/irb/command/show_source.rb
214 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/irb-1.14.0/lib/irb/command/step.rb
215 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/irb-1.14.0/lib/irb/command/subirb.rb
216 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/irb-1.14.0/lib/irb/command/whereami.rb
217 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/irb-1.14.0/lib/irb/default_commands.rb
218 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/irb-1.14.0/lib/irb/statement.rb
219 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/irb-1.14.0/lib/irb/locale.rb
220 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/irb-1.14.0/lib/irb/version.rb
221 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/irb-1.14.0/lib/irb/easter-egg.rb
222 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/irb-1.14.0/lib/irb.rb
223 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/prettyprint.rb
224 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/3.3.0/pp.rb
225 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/irb-1.14.0/lib/irb/color_printer.rb
226 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/rdoc-6.7.0/lib/rdoc/version.rb
227 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/rdoc-6.7.0/lib/rdoc/i18n/text.rb
228 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/rdoc-6.7.0/lib/rdoc/i18n.rb
229 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/rdoc-6.7.0/lib/rdoc.rb
230 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/version.rb
231 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/constants.rb
232 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/errors.rb
233 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/timeout-0.4.1/lib/timeout.rb
234 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/utility/engine.rb
235 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/synchronization/abstract_object.rb
236 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/utility/native_extension_loader.rb
237 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/utility/monotonic_time.rb
238 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/synchronization/full_memory_barrier.rb
239 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/synchronization/safe_initialization.rb
240 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/synchronization/volatile.rb
241 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/atomic_reference/atomic_direct_update.rb
242 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/atomic_reference/numeric_cas_wrapper.rb
243 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/atomic_reference/mutex_atomic.rb
244 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/atomic/atomic_reference.rb
245 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/synchronization/object.rb
246 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/synchronization/abstract_lockable_object.rb
247 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/synchronization/mutex_lockable_object.rb
248 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/synchronization/jruby_lockable_object.rb
249 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/synchronization/lockable_object.rb
250 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/atomic/event.rb
251 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/concern/dereferenceable.rb
252 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/concern/obligation.rb
253 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/logger-1.6.1/lib/logger/version.rb
254 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/logger-1.6.1/lib/logger/formatter.rb
255 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/logger-1.6.1/lib/logger/period.rb
256 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/logger-1.6.1/lib/logger/log_device.rb
257 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/logger-1.6.1/lib/logger/severity.rb
258 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/logger-1.6.1/lib/logger/errors.rb
259 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/logger-1.6.1/lib/logger.rb
260 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/concern/logging.rb
261 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/concern/deprecation.rb
262 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/executor/executor_service.rb
263 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/executor/abstract_executor_service.rb
264 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/executor/serial_executor_service.rb
265 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/executor/immediate_executor.rb
266 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/delay.rb
267 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/executor/ruby_executor_service.rb
268 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb
269 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/executor/thread_pool_executor.rb
270 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/executor/fixed_thread_pool.rb
271 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/executor/cached_thread_pool.rb
272 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/utility/processor_counter.rb
273 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/configuration.rb
274 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/atomic/mutex_atomic_boolean.rb
275 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/atomic/atomic_boolean.rb
276 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/utility/native_integer.rb
277 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/atomic/mutex_atomic_fixnum.rb
278 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/atomic/atomic_fixnum.rb
279 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/atomic/cyclic_barrier.rb
280 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/atomic/mutex_count_down_latch.rb
281 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/atomic/java_count_down_latch.rb
282 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/atomic/count_down_latch.rb
283 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/synchronization/lock.rb
284 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/atomic/read_write_lock.rb
285 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/atomic/locals.rb
286 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/atomic/fiber_local_var.rb
287 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/atomic/thread_local_var.rb
288 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/atomic/lock_local_var.rb
289 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/atomic/reentrant_read_write_lock.rb
290 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/atomic/mutex_semaphore.rb
291 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/atomic/semaphore.rb
292 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/atomics.rb
293 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/executor/simple_executor_service.rb
294 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/executor/indirect_immediate_executor.rb
295 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/executor/java_executor_service.rb
296 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/executor/java_single_thread_executor.rb
297 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/executor/java_thread_pool_executor.rb
298 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/executor/ruby_single_thread_executor.rb
299 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/executor/safe_task_executor.rb
300 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/executor/serialized_execution.rb
301 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/executor/serialized_execution_delegator.rb
302 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/executor/single_thread_executor.rb
303 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/collection/copy_on_write_observer_set.rb
304 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/collection/copy_on_notify_observer_set.rb
305 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/concern/observable.rb
306 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/ivar.rb
307 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/options.rb
308 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/scheduled_task.rb
309 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/collection/java_non_concurrent_priority_queue.rb
310 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/collection/ruby_non_concurrent_priority_queue.rb
311 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/collection/non_concurrent_priority_queue.rb
312 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/executor/timer_set.rb
313 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/executors.rb
314 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/synchronization/condition.rb
315 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/synchronization.rb
316 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/atomic/atomic_markable_reference.rb
317 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/agent.rb
318 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/atom.rb
319 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/thread_safe/util.rb
320 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/array.rb
321 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/hash.rb
322 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/thread_safe/util/data_structures.rb
323 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/set.rb
324 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/collection/map/non_concurrent_map_backend.rb
325 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/collection/map/mri_map_backend.rb
326 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/map.rb
327 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/tuple.rb
328 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/async.rb
329 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/future.rb
330 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/dataflow.rb
331 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/maybe.rb
332 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/exchanger.rb
333 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/synchronization/abstract_struct.rb
334 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/immutable_struct.rb
335 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/mutable_struct.rb
336 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/mvar.rb
337 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/promise.rb
338 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/settable_struct.rb
339 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/timer_task.rb
340 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/tvar.rb
341 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/collection/lock_free_stack.rb
342 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/re_include.rb
343 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/promises.rb
344 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/thread_safe/synchronized_delegator.rb
345 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent.rb
346 /Users/bensheldon/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent-ruby.rb
Right, please report it at https://bugs.ruby-lang.org/ (I'm surprised the output doesn't say that).
I've been able to reproduce this in ruby 3.3.1 - 3.3.5. I'll move my report over the ruby-lang.org as suggested.
Gentlemen,
Maybe I'm not groking the documentation, but my crash reports match yours and they highlight a large number of created threads
-- Threading information --------------------------------------------------- Total ractor count: 1 Ruby thread count for this ractor: 16383
And my reading of Concurrent::FixedThreadPool docs left me with the impression that line 6 of the script would only create 10 threads and that the pool was responsible for managing the pending requests based on threads being ready for work. If that's a correct understanding, why do we have 16,383 pending threads in this crash report?
FWIW I cannot reproduce it on linux-amd64 (ruby 3.3.5 (2024-09-03 revision ef084cc8f4) [x86_64-linux]
).
However I get an exception:
...
posting iteration 99999
posting iteration 100000
Wait loop
85712
2024-10-01 20:33:24 +0200
88590
2024-10-01 20:33:25 +0200
91170
2024-10-01 20:33:26 +0200
93320
2024-10-01 20:33:27 +0200
95182
2024-10-01 20:33:28 +0200
96813
2024-10-01 20:33:29 +0200
98062
2024-10-01 20:33:30 +0200
99049
2024-10-01 20:33:31 +0200
99662
2024-10-01 20:33:32 +0200
/home/eregon/.rubies/ruby-3.3.5/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/promises.rb:1646:in `block in new_blocked_by': undefined method `promise' for an instance of Concurrent::Array (NoMethodError)
delayed = blockers.reduce(nil) { |d, f| add_delayed d, f.promise.delayed_because }
^^^^^^^^
from /home/eregon/.rubies/ruby-3.3.5/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/promises.rb:1646:in `each'
from /home/eregon/.rubies/ruby-3.3.5/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/promises.rb:1646:in `reduce'
from /home/eregon/.rubies/ruby-3.3.5/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/promises.rb:1646:in `new_blocked_by'
from /home/eregon/.rubies/ruby-3.3.5/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/promises.rb:255:in `zip_futures_on'
from /home/eregon/.rubies/ruby-3.3.5/lib/ruby/gems/3.3.0/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/promises.rb:241:in `zip_futures'
from -:40:in `<main>'
And similar on truffleruby 24.1.0, like ruby 3.2.4, Oracle GraalVM Native [x86_64-linux]
:
...
2024-10-01 20:37:02 +0200
98653
2024-10-01 20:37:03 +0200
/home/eregon/.rubies/truffleruby-24.1.0/lib/gems/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/promises.rb:1646:in `block in new_blocked_by': undefined method `promise' for #<Concurrent::Array:0x4d978> (NoMethodError)
from <internal:core> core/enumerable.rb:528:in `inject'
from /home/eregon/.rubies/truffleruby-24.1.0/lib/gems/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/promises.rb:1646:in `new_blocked_by'
from /home/eregon/.rubies/truffleruby-24.1.0/lib/gems/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/promises.rb:255:in `zip_futures_on'
from /home/eregon/.rubies/truffleruby-24.1.0/lib/gems/gems/concurrent-ruby-1.3.4/lib/concurrent-ruby/concurrent/promises.rb:241:in `zip_futures'
from -:40:in `<main>'
Concurrent::Promises.future(counter) do
doesn't execute on FixedThreadPool, see the documentation: https://ruby-concurrency.github.io/concurrent-ruby/1.3.4/Concurrent/Promises.html#future-class_method
So yes this script creates many threads.
I'll close, this looks like a CRuby bug with many threads it seems.
concurrent-ruby
version: 1.3.4concurrent-ruby-ext
installed: noconcurrent-ruby-edge
used: noruby-3.3.5 with YJIT, running with YJIT disabled
I was hoping to narrow down what I think is a separate problem with thread pools reliably hanging (all threads freeze) when using:
Unfortunately, before I got there, my (what I thought was a) simple test harness is crashing reliably.
Running the following (updated) script via: ruby crash.rb >stdout.log 2>stderr.log
stderr.log stdout.log
Please let me know if I can do anything to help with this issue (more data, crash dumps, altered configurations, etc.)
@hms