debugger processes on Windows not closing properly in (EAP) RM-110.403

Hi again guys,

2 things.. Noticed a significant performance increase going from the 209 to the 403 EAP release. Nice work! It's a little slow to start up and finish running the background processes on initialisation but once that's done it does seem significantly more fluent!

Found a bug though. When the debugger starts I now see 2 seperate windows ruby.exe processes starting in my task manager. Most times one of these processes will die off pretty quickly and so won't cause any problems. But occassionally.. like 1 in 5 times, both processes stay open and when I close the debugger using the square "Stop" button in the actual debugger window at the bottom only one of these processes is killed off and I then have to forcefully go into the task manager and kill off the other process before I can begin a new debugging session. Otherwise when I try and start a new debugging session I keep seeing this error:

Fast Debugger (ruby-debug-ide 0.4.17.beta8, ruby-debug-base 0.11.30.pre2) listens on 127.0.0.1:65180
Fatal exception in DebugThread loop: Only one usage of each socket address (protocol/network address/port) is normally permitted. - bind(2)
Backtrace:
C:/ruby192/lib/ruby/gems/1.9.1/gems/ruby-debug-ide-0.4.17.beta8/lib/ruby-debug-ide.rb:150:in `initialize'
  from: C:/ruby192/lib/ruby/gems/1.9.1/gems/ruby-debug-ide-0.4.17.beta8/lib/ruby-debug-ide.rb:150:in `new'
  from: C:/ruby192/lib/ruby/gems/1.9.1/gems/ruby-debug-ide-0.4.17.beta8/lib/ruby-debug-ide.rb:150:in `block in start_control



This happens running Ruby192 with the latest debugger gems but also with Ruby 186 using really old debugger gems (ruby-debug-base 0.9.3 and the ruby-debug-ide 0.1.9) so I don't think it's being caused by any of the ruby-debug gems themselves.. but I could be wrong.

Anyways, cheers guys. All the best

5 comments

Which process do you debug? Rails server?

0

In general I have run into issues with Webrick and Ruby processes when trying to run the server normally or as debug on EAP 110.403. Sometimes it spawns 2 server instances and the error I get is:

=> Booting WEBrick
=> Rails 2.3.8 application starting on http://127.0.0.1:3002
=> Call with -d to detach
=> Ctrl-C to shutdown server
[2011-11-17 08:38:17] INFO  WEBrick 1.3.1
[2011-11-17 08:38:17] INFO  ruby 1.8.7 (2010-08-16) [i386-mingw32]
[2011-11-17 08:38:17] WARN  TCPServer Error: Only one usage of each socket address (protocol/network address/port) is normally permitted. - bind(2)
C:/Ruby187/lib/ruby/1.8/webrick/utils.rb:73:in `initialize': Only one usage of each socket address (protocol/network address/port) is normally permitted. - bind(2) (Errno::EADDRINUSE)



I have to manually kill processes in the task manager and try again. Usually it takes 3-4 tries before I can get the server running successfully. This is on my Windows Vista work machine. I haven't seen the same problem on EAP 110.403 on Mac at home yet. I didn't have any trouble prior to EAP 110.403

On a brighter note the EAP release is terrific; better performance and the interface enchancements are beautiful.
0

Hi Roman,

Almost identical to Kawika K actually. I'm using a WeBrick server to boot a Rails 2.3.5 application. I see the same error Kawika is seeing with the "port already in use" error but it's pretty intermittent on my machine.

I'm also running RM on Windows 7 64-bit if that helps.?

0

Hi, I've filed an issue http://youtrack.jetbrains.net/issue/RUBY-9854. RubyMine launches rails server using some wrapper to provide support for Ctrl+Break shortcut. Most likely issue is related to it. We've add this feature in 4.0 eaps.

0

Terrific, thanks for following up. 4.0 EAP is working great for me so far aside from this issue.

0

Please sign in to leave a comment.