ruby / debug

Debugging functionality for Ruby
BSD 2-Clause "Simplified" License
1.11k stars 124 forks source link

Segmentation Fault Crash #1110

Open reidcooper opened 2 weeks ago

reidcooper commented 2 weeks ago

Your environment

Describe the bug

When I attempt to use binding.break in my code during a rspec test, I encounter a Segmentation Fault:

/Users/reid/.asdf/installs/ruby/3.0.0/lib/ruby/gems/3.0.0/gems/debug-1.9.2/lib/debug/thread_client.rb:279: [BUG] Segmentation fault at 0x0000000168000028
ruby 3.0.0p0 (2020-12-25 revision 95aff21468) [arm64-darwin23]

-- Crash Report log information --------------------------------------------
   See Crash Report log file under the one of following:
     * ~/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:0099 p:---- s:0536 e:000535 CFUNC  :capture_frames
c:0098 p:0042 s:0531 E:002518 METHOD /Users/reid/.asdf/installs/ruby/3.0.0/lib/ruby/gems/3.0.0/gems/debug-1.9.2/lib/debug/thread_client.rb:279
c:0097 p:0011 s:0518 E:000950 METHOD /Users/reid/.asdf/installs/ruby/3.0.0/lib/ruby/gems/3.0.0/gems/debug-1.9.2/lib/debug/thread_client.rb:251
c:0096 p:0085 s:0512 E:001e18 METHOD /Users/reid/.asdf/installs/ruby/3.0.0/lib/ruby/gems/3.0.0/gems/debug-1.9.2/lib/debug/breakpoint.rb:69
c:0095 p:0032 s:0503 E:0009a8 BLOCK  /Users/reid/.asdf/installs/ruby/3.0.0/lib/ruby/gems/3.0.0/gems/debug-1.9.2/lib/debug/breakpoint.rb:170 [FINISH]
c:0094 p:0198 s:0499 E:0018d0 METHOD /Users/reid/.asdf/installs/ruby/3.0.0/lib/ruby/gems/3.0.0/gems/debug-1.9.2/lib/debug/session.rb:2641
c:0093 p:0005 s:0487 E:001750 METHOD /Users/reid/code/fedora/app/services/captions/caption_generation_requests/creator.rb:8
c:0092 p:0011 s:0481 E:0009d8 BLOCK  /Users/reid/code/fedora/spec/services/captions/caption_generation_requests/creator_spec.rb:56 [FINISH]
c:0091 p:---- s:0477 e:000476 CFUNC  :instance_exec
c:0090 p:0029 s:0472 E:000a40 BLOCK  /Users/reid/.asdf/installs/ruby/3.0.0/lib/ruby/gems/3.0.0/gems/rspec-core-3.11.0/lib/rspec/core/example.rb:263
c:0089 p:0003 s:0467 E:002360 BLOCK  /Users/reid/.asdf/installs/ruby/3.0.0/lib/ruby/gems/3.0.0/gems/rspec-core-3.11.0/lib/rspec/core/example.rb:511
c:0088 p:0003 s:0464 E:002680 BLOCK  /Users/reid/.asdf/installs/ruby/3.0.0/lib/ruby/gems/3.0.0/gems/rspec-core-3.11.0/lib/rspec/core/example.rb:468
c:0087 p:0003 s:0461 E:000250 BLOCK  /Users/reid/.asdf/installs/ruby/3.0.0/lib/ruby/gems/3.0.0/gems/rspec-core-3.11.0/lib/rspec/core/hooks.rb:486
c:0086 p:0003 s:0458 E:000c90 BLOCK  /Users/reid/.asdf/installs/ruby/3.0.0/lib/ruby/gems/3.0.0/gems/rspec-core-3.11.0/lib/rspec/core/hooks.rb:626
c:0085 p:0018 s:0455 E:000170 METHOD /Users/reid/.asdf/installs/ruby/3.0.0/lib/ruby/gems/3.0.0/gems/rspec-core-3.11.0/lib/rspec/core/example.rb:352
c:0084 p:0009 s:0449 E:000228 BLOCK  /Users/reid/.asdf/installs/ruby/3.0.0/lib/ruby/gems/3.0.0/gems/rspec-rails-5.1.2/lib/rspec/rails/adapters.rb:75 [FINISH]
c:0083 p:---- s:0445 e:000444 CFUNC  :instance_exec
c:0082 p:0013 s:0440 E:000290 METHOD /Users/reid/.asdf/installs/ruby/3.0.0/lib/ruby/gems/3.0.0/gems/rspec-core-3.11.0/lib/rspec/core/example.rb:457
c:0081 p:0010 s:0434 E:002190 METHOD /Users/reid/.asdf/installs/ruby/3.0.0/lib/ruby/gems/3.0.0/gems/rspec-core-3.11.0/lib/rspec/core/hooks.rb:390
c:0080 p:0010 s:0428 E:001f80 BLOCK  /Users/reid/.asdf/installs/ruby/3.0.0/lib/ruby/gems/3.0.0/gems/rspec-core-3.11.0/lib/rspec/core/hooks.rb:628
c:0079 p:0018 s:0425 E:0021c0 METHOD /Users/reid/.asdf/installs/ruby/3.0.0/lib/ruby/gems/3.0.0/gems/rspec-core-3.11.0/lib/rspec/core/example.rb:352
c:0078 p:0134 s:0419 E:0021f0 BLOCK  /Users/reid/code/fedora/spec/spec_helper.rb:105 [FINISH]
c:0077 p:---- s:0414 e:000413 CFUNC  :instance_exec
c:0076 p:0013 s:0409 E:002220 METHOD /Users/reid/.asdf/installs/ruby/3.0.0/lib/ruby/gems/3.0.0/gems/rspec-core-3.11.0/lib/rspec/core/example.rb:457
c:0075 p:0010 s:0403 E:002250 METHOD /Users/reid/.asdf/installs/ruby/3.0.0/lib/ruby/gems/3.0.0/gems/rspec-core-3.11.0/lib/rspec/core/hooks.rb:390
c:0074 p:0010 s:0397 E:000750 BLOCK  /Users/reid/.asdf/installs/ruby/3.0.0/lib/ruby/gems/3.0.0/gems/rspec-core-3.11.0/lib/rspec/core/hooks.rb:628
c:0073 p:0018 s:0394 E:0022b0 METHOD /Users/reid/.asdf/installs/ruby/3.0.0/lib/ruby/gems/3.0.0/gems/rspec-core-3.11.0/lib/rspec/core/example.rb:352
c:0072 p:0005 s:0388 E:0020c0 BLOCK  /Users/reid/code/fedora/spec/spec_helper.rb:76
c:0071 p:0006 s:0385 E:002308 METHOD /Users/reid/.asdf/installs/ruby/3.0.0/lib/ruby/gems/3.0.0/gems/database_cleaner-1.8.5/lib/database_cleaner/generic/base.rb:16
c:0070 p:0028 s:0380 E:002428 METHOD /Users/reid/.asdf/installs/ruby/3.0.0/lib/ruby/3.0.0/forwardable.rb:238
zsh: killed     bundle exec rspec

To Reproduce

I am not sure how to reproduce this bug outside of my company's application.

Expected behavior

I expect to jump right into a debug session and be able to use rdbg.

Additional context Add any other context about the problem here.

crash-reports.zip

reidcooper commented 2 weeks ago

Here is another second attempt with Crash Report and Terminal output:

second-attempt-1.zip

reidcooper commented 2 weeks ago

Seemed like there may be a chance that this issue was similar but was derailed focus - https://github.com/ruby/debug/issues/542