ruby-debug / debase

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Version 0.2.3 hangs on page load after hitting breakpoint

rockorequin opened this issue · comments

I have a Netbeans 11 / Rails 5.0.2 / ruby-debug-ide 0.7.0 project.

I find that with debase 0.2.3, the debugger hangs with this sequence:

  • I load a page on the browser.
  • The debugger stops at a breakpoint.
  • I press F5 in Netbeans to continue.
  • The page finishes loading in the browser.
  • I press F5 on the browser to refresh the page, or I try to navigate to another page.
  • In the Netbeans log window, the GET request is shown, but nothing further happens (the breakpoint isn't hit, and none of the normal Rails messages like "Processing by ..." appear. If I try to continue with F5 on Netbeans or to enable/disable the breakpoint, the Netbeans editor window also hangs. Once the editor window has hung, I need to kill -9 puma to break the deadlock, but before this, I can stop the debugger with Finish Debugging Session (Shift-F5).

If there is no breakpoint, the page loads correctly multiple times.

This is a regression, because debase 0.2.3-beta5 doesn't have this problem.

@rockorequin Am I right, that debugger should stop on the breakpoint after refreshing the page in a browser, but it wasn't?

Yes, the debugger should stop on the breakpoint. But I think it freezes before even that point, because none of the log messages you'd expect to see prior to hitting the breakpoint appear. Also, if I go to another page where there isn't a breakpoint to hit, that page never loads.

@rockorequin I managed to reproduce it

@rockorequin @thestelz Could you please check debase gem version from this repo: https://github.com/ViugiNick/debase?

@ViugiNick Thanks, debase from that repo looks like it fixes the problem.

Just a side note: Had a similar behavior with VSCode 1.36.1 and ruby-debug-ide 0.7.0, debase 0.2.3
After a successful break point cycle of stepping in and continuing the execution, a second break point cycle was not possible anymore. The server stopped responding completely (happened with Puma and Webrick). Only chance was to disconnect the debugger. Debase from @ViugiNick repo fixes the problem for me as well. :)
But there is another issue: When you start the debugger and have a disabled breakpoint, once you connect to the debugger, the server won't start. That means right now: when you connect with your IDE to the debugger, make sure the break point (just tested with one) is active or no break points registered at all.

@iggycoder Sound like a problem on the vs code plugin side. Is it possible to log verbose debugger information somehow in VSCode?

Ok. This issue has been reported.

@rockorequin @thestelz Published a 0.2.4 debase version, this issue should be resolved there

@ViugiNick Thanks! 0.2.4 is working fine.

commented

@ViugiNick I was using the 0.2.3 and 0.2.4 versions with no issues. I think it's good to go.

@rockorequin Could you please close the issue?