Problem with debugger of ruby 1.9
Do you support debugger for ruby 1.9 in 3.0 beta2?
When is start debugging RubyMine it tries to install ruby-debug-ide instead of ruby-debug-ide19 and ruby-debug insted of ruby-debug19. May be this is source of problem?
I'm using ruby 1.9.2 with DevKit 4.5 on Windows 7 machine.
Please sign in to leave a comment.
Hello Alexey,
This problem is already fixed and fix will be available in the next build of RubyMine.
Regards,
Oleg
Great news! Looking forward to next build.
Just tried it in 3.0 RC (RM 97.95) and the issues mentioned in the first post still exist.
What problems exactly are you still experiencing?
Regards,
Oleg
Using RVM with ruby 1.9.2 and rails 3, when I go to run the debugger it installs ruby-debug-base19 (0.11.25.jb) and ruby-debg-ide (0.4.14) on Ubuntu 10.04 LTS.
Starting the debugger, the console outputs:
/home/keith/.rvm/rubies/ruby-1.9.2-p0/bin/ruby -e at_exit{sleep(1)};$stdout.sync=true;$stderr.sync=true;load($0=ARGV.shift) /home/keith/.rvm/rubies/ruby-1.9.2-p0/bin/rdebug-ide _0.4.14_ --debug --port 39974 -- /home/keith/Dropbox/web_development/weqly/script/rails server -p 3000 -b 0.0.0.0 -e development
Fast Debugger (ruby-debug-ide 0.4.14, ruby-debug-base 0.11.25.jb) listens on 127.0.0.1:39974
Starting command read loop
Processing: start
Starting: running program script
=> Booting WEBrick
=> Rails 3.0.0 application starting in development on http://0.0.0.0:3000
=> Call with -d to detach
=> Ctrl-C to shutdown server
[2010-11-16 09:34:59] INFO WEBrick 1.3.1
[2010-11-16 09:34:59] INFO ruby 1.9.2 (2010-08-18) [i686-linux]
[2010-11-16 09:34:59] INFO WEBrick::HTTPServer#start: pid=2665 port=3000
___________________
Then when I run to a breakpoint, this happens:
/home/keith/.rvm/rubies/ruby-1.9.2-p0/bin/ruby -e at_exit{sleep(1)};$stdout.sync=true;$stderr.sync=true;load($0=ARGV.shift) /home/keith/.rvm/rubies/ruby-1.9.2-p0/bin/rdebug-ide _0.4.14_ --debug --port 39974 -- /home/keith/Dropbox/web_development/weqly/script/rails server -p 3000 -b 0.0.0.0 -e development
Fast Debugger (ruby-debug-ide 0.4.14, ruby-debug-base 0.11.25.jb) listens on 127.0.0.1:39974
Starting command read loop
Processing: start
Starting: running program script
=> Booting WEBrick
=> Rails 3.0.0 application starting in development on http://0.0.0.0:3000
=> Call with -d to detach
=> Ctrl-C to shutdown server
[2010-11-16 09:34:59] INFO WEBrick 1.3.1
[2010-11-16 09:34:59] INFO ruby 1.9.2 (2010-08-18) [i686-linux]
[2010-11-16 09:34:59] INFO WEBrick::HTTPServer#start: pid=2665 port=3000
Processing: b /home/keith/Dropbox/web_development/weqly/app/controllers/media_items_controller.rb:5
<breakpointAdded no="1" location="/home/keith/Dropbox/web_development/weqly/app/controllers/media_items_controller.rb:5"/>
<breakpoint file="/home/keith/Dropbox/web_development/weqly/app/controllers/media_items_controller.rb" line="5" threadId="3"/>
Stopping Thread #<Thread:0xa2441f4>
Threads equal: true
Processing: th l
<threads>
<thread id="1" status="sleep" />
<thread id="3" status="sleep" />
<thread id="4" status="sleep" />
</threads>
Processing: th l
<threads>
<thread id="1" status="sleep" />
<thread id="3" status="sleep" />
<thread id="4" status="sleep" />
</threads>
Processing: w
Processing context: w
<frames>
<frame no='1' file='/home/keith/Dropbox/web_development/weqly/app/controllers/media_items_controller.rb' line='5' current='true' />
<frame no='2' file='/home/keith/.rvm/gems/ruby-1.9.2-p0/gems/actionpack-3.0.0/lib/action_controller/metal/implicit_render.rb' line='4' />
<frame no='3' file='/home/keith/.rvm/gems/ruby-1.9.2-p0/gems/actionpack-3.0.0/lib/abstract_controller/base.rb' line='150' />
<frame no='4' file='/home/keith/.rvm/gems/ruby-1.9.2-p0/gems/actionpack-3.0.0/lib/action_controller/metal/rendering.rb' line='11' />
<frame no='5' file='/home/keith/.rvm/gems/ruby-1.9.2-p0/gems/activesupport-3.0.0/lib/active_support/callbacks.rb' line='18' />
<frame no='6' file='/home/keith/.rvm/gems/ruby-1.9.2-p0/gems/activesupport-3.0.0/lib/active_support/callbacks.rb' line='409' />
<frame no='7' file='/home/keith/.rvm/gems/ruby-1.9.2-p0/gems/activesupport-3.0.0/lib/active_support/callbacks.rb' line='93' />
<frame no='8' file='/home/keith/.rvm/gems/ruby-1.9.2-p0/gems/actionpack-3.0.0/lib/abstract_controller/callbacks.rb' line='17' />
<frame no='9' file='/home/keith/.rvm/gems/ruby-1.9.2-p0/gems/activesupport-3.0.0/lib/active_support/notifications/instrumenter.rb' line='30' />
<frame no='10' file='/home/keith/.rvm/gems/ruby-1.9.2-p0/gems/activesupport-3.0.0/lib/active_support/notifications.rb' line='52' />
<frame no='11' file='/home/keith/.rvm/gems/ruby-1.9.2-p0/gems/actionpack-3.0.0/lib/action_controller/metal/instrumentation.rb' line='29' />
<frame no='12' file='/home/keith/.rvm/gems/ruby-1.9.2-p0/gems/actionpack-3.0.0/lib/action_controller/metal/rescue.rb' line='17' />
<frame no='13' file='/home/keith/.rvm/gems/ruby-1.9.2-p0/gems/actionpack-3.0.0/lib/abstract_controller/base.rb' line='119' />
<frame no='14' file='/home/keith/.rvm/gems/ruby-1.9.2-p0/gems/actionpack-3.0.0/lib/abstract_controller/rendering.rb' line='40' />
<frame no='15' file='/home/keith/.rvm/gems/ruby-1.9.2-p0/gems/actionpack-3.0.0/lib/action_controller/metal.rb' line='133' />
<frame no='16' file='/home/keith/.rvm/gems/ruby-1.9.2-p0/gems/actionpack-3.0.0/lib/action_controller/metal/rack_delegation.rb' line='14' />
<frame no='17' file='/home/keith/.rvm/gems/ruby-1.9.2-p0/gems/actionpack-3.0.0/lib/action_dispatch/routing/route_set.rb' line='173' />
<frame no='18' file='/home/keith/.rvm/gems/ruby-1.9.2-p0/gems/actionpack-3.0.0/lib/action_dispatch/routing/route_set.rb' line='62' />
<frame no='19' file='/home/keith/.rvm/gems/ruby-1.9.2-p0/gems/actionpack-3.0.0/lib/action_dispatch/routing/route_set.rb' line='27' />
<frame no='20' file='/home/keith/.rvm/gems/ruby-1.9.2-p0/gems/rack-mount-0.6.13/lib/rack/mount/code_generation.rb' line='148' />
<frame no='21' file='/home/keith/.rvm/gems/ruby-1.9.2-p0/gems/rack-mount-0.6.13/lib/rack/mount/code_generation.rb' line='92' />
<frame no='22' file='/home/keith/.rvm/gems/ruby-1.9.2-p0/gems/rack-mount-0.6.13/lib/rack/mount/route_set.rb' line='139' />
<frame no='23' file='/home/keith/.rvm/gems/ruby-1.9.2-p0/gems/actionpack-3.0.0/lib/action_dispatch/routing/route_set.rb' line='492' />
<frame no='24' file='/home/keith/.rvm/gems/ruby-1.9.2-p0/gems/actionpack-3.0.0/lib/action_dispatch/middleware/best_standards_support.rb' line='17' />
<frame no='25' file='/home/keith/.rvm/gems/ruby-1.9.2-p0/gems/actionpack-3.0.0/lib/action_dispatch/middleware/head.rb' line='14' />
<frame no='26' file='/home/keith/.rvm/gems/ruby-1.9.2-p0/gems/rack-1.2.1/lib/rack/methodoverride.rb' line='24' />
<frame no='27' file='/home/keith/.rvm/gems/ruby-1.9.2-p0/gems/actionpack-3.0.0/lib/action_dispatch/middleware/params_parser.rb' line='21' />
<frame no='28' file='/home/keith/.rvm/gems/ruby-1.9.2-p0/gems/actionpack-3.0.0/lib/action_dispatch/middleware/flash.rb' line='182' />
<frame no='29' file='/home/keith/.rvm/gems/ruby-1.9.2-p0/gems/actionpack-3.0.0/lib/action_dispatch/middleware/session/abstract_store.rb' line='149' />
<frame no='30' file='/home/keith/.rvm/gems/ruby-1.9.2-p0/gems/actionpack-3.0.0/lib/action_dispatch/middleware/cookies.rb' line='287' />
<frame no='31' file='/home/keith/.rvm/gems/ruby-1.9.2-p0/gems/activesupport-3.0.0/lib/active_support/callbacks.rb' line='46' />
<frame no='32' file='/home/keith/.rvm/gems/ruby-1.9.2-p0/gems/actionpack-3.0.0/lib/action_dispatch/middleware/callbacks.rb' line='44' />
<frame no='33' file='/home/keith/.rvm/gems/ruby-1.9.2-p0/gems/rack-1.2.1/lib/rack/sendfile.rb' line='107' />
<frame no='34' file='/home/keith/.rvm/gems/ruby-1.9.2-p0/gems/actionpack-3.0.0/lib/action_dispatch/middleware/remote_ip.rb' line='48' />
<frame no='35' file='/home/keith/.rvm/gems/ruby-1.9.2-p0/gems/actionpack-3.0.0/lib/action_dispatch/middleware/show_exceptions.rb' line='46' />
<frame no='36' file='/home/keith/.rvm/gems/ruby-1.9.2-p0/gems/railties-3.0.0/lib/rails/rack/logger.rb' line='13' />
<frame no='37' file='/home/keith/.rvm/gems/ruby-1.9.2-p0/gems/rack-1.2.1/lib/rack/runtime.rb' line='17' />
<frame no='38' file='/home/keith/.rvm/gems/ruby-1.9.2-p0/gems/activesupport-3.0.0/lib/active_support/cache/strategy/local_cache.rb' line='72' />
<frame no='39' file='/home/keith/Dropbox/web_development/weqly/<internal:prelude>' line='11' />
<frame no='40' file='/home/keith/.rvm/gems/ruby-1.9.2-p0/gems/rack-1.2.1/lib/rack/lock.rb' line='11' />
<frame no='41' file='/home/keith/.rvm/gems/ruby-1.9.2-p0/gems/actionpack-3.0.0/lib/action_dispatch/middleware/static.rb' line='30' />
<frame no='42' file='/home/keith/.rvm/gems/ruby-1.9.2-p0/gems/railties-3.0.0/lib/rails/application.rb' line='168' />
<frame no='43' file='/home/keith/.rvm/gems/ruby-1.9.2-p0/gems/railties-3.0.0/lib/rails/application.rb' line='77' />
<frame no='44' file='/home/keith/.rvm/gems/ruby-1.9.2-p0/gems/railties-3.0.0/lib/rails/rack/log_tailer.rb' line='14' />
<frame no='45' file='/home/keith/.rvm/gems/ruby-1.9.2-p0/gems/rack-1.2.1/lib/rack/content_length.rb' line='13' />
<frame no='46' file='/home/keith/.rvm/gems/ruby-1.9.2-p0/gems/rack-1.2.1/lib/rack/handler/webrick.rb' line='52' />
<frame no='47' file='/home/keith/.rvm/rubies/ruby-1.9.2-p0/lib/ruby/1.9.1/webrick/httpserver.rb' line='111' />
<frame no='48' file='/home/keith/.rvm/rubies/ruby-1.9.2-p0/lib/ruby/1.9.1/webrick/httpserver.rb' line='70' />
<frame no='49' file='/home/keith/.rvm/rubies/ruby-1.9.2-p0/lib/ruby/1.9.1/webrick/server.rb' line='183' />
</frames>
Processing: frame 1; v l
Processing context: frame 1
Selected frame no 0
Processing context: v l
<variables>
<variable name="self" kind="local" value="#<MediaItemsController:0x8fd4140>" type="MediaItemsController" hasChildren="true" objectId="+0x47ea0a0"/>
</variables>
Processing: frame 1; v inspect @media_items
Processing context: frame 1
Selected frame no 0
Processing context: v inspect @media_items
Evaluating with timeout after 10 sec
<variables>
<variable name="eval_result" kind="local"/>
</variables>
Processing: frame 1; v inspect MediaItem
Processing context: frame 1
Selected frame no 0
Processing context: v inspect MediaItem
Evaluating with timeout after 10 sec
<variables>
<variable name="eval_result" kind="local" value="MediaItem" type="Class" hasChildren="true" objectId="+0x4c39fa2"/>
</variables>
Processing: v g
Processing context: v g
<variables>
Evaluating with timeout after 10 sec
<variable name="$!" kind="global"/>
Evaluating with timeout after 10 sec
<variable name="$"" kind="global" value="Array (807 element(s))" type="Array" hasChildren="true" objectId="+0x44c6a90"/>
Evaluating with timeout after 10 sec
<variable name="$$" kind="global" value="2665" type="Fixnum" hasChildren="false" objectId="+0x14d3"/>
Evaluating with timeout after 10 sec
<variable name="$&" kind="global"/>
Evaluating with timeout after 10 sec
<variable name="$'" kind="global"/>
Evaluating with timeout after 10 sec
<variable name="$*" kind="global" value="Array (6 element(s))" type="Array" hasChildren="true" objectId="+0x44c777e"/>
Evaluating with timeout after 10 sec
<variable name="$+" kind="global"/>
Evaluating with timeout after 10 sec
<variable name="$," kind="global"/>
Evaluating with timeout after 10 sec
<variable name="$-0" kind="global" value="
" type="String" hasChildren="false" objectId="+0x44c7a80"/>
Evaluating with timeout after 10 sec
<variable name="$-F" kind="global"/>
Evaluating with timeout after 10 sec
<variable name="$-I" kind="global" value="Array (84 element(s))" type="Array" hasChildren="true" objectId="+0x44c6aae"/>
Evaluating with timeout after 10 sec
<variable name="$-K" kind="global"/>
Evaluating with timeout after 10 sec
<processingException type="TypeError" message="wrong argument type Debugger::Context (expected mutex)"/>
</variables>
<error>
<error>
Debugging doesn't exit (but you can't stop the ruby process without killing it).
Please use workaround described here: http://youtrack.jetbrains.net/issue/RUBY-7164#comment=27-180036
However, ruby-debug-base19 still segfaults from time to time, we're working on it right now