« Return to Thread: [67cat][ruby][debugger] Debugger doesn't always honor breakpoints.

Re: [67cat][ruby][debugger] Debugger doesn't always honor breakpoints.

by Erno Mononen :: Rate this Message:

Reply to Author | View in Thread


Thanks. So it seems the problem is in the backend, I'll try to add some
logging to ruby-debug-ide to track this down. I suppose  this is not
easily reproducible with a new project from scratch?

Erno


Eric M. Smith wrote:

> Erno,
>
> I double checked and yes, each breakpoint in the system (including
> those that are skipped) have a 4 record sequence in the log file
>
>    Adding breakpoint RubyLineBreakpoint[path: <location>]
>    Sending command debugger: b <location>
>       Received message <message debug='true'>Processing: b <location>
>       Received: <breakpointAdded no='x' location='<location>'
>
> where <location> is a file:line number combination (with message
> specific formatting)
>
> Eric
>
>
> Erno Mononen wrote:
>>
>> Hi Eric,
>>
>> Could you check from the log whether the breakpoints are successfully
>> sent to the backend? There should be first "Sending command debugger:
>> b..." and then "Received: <breakpointAdded..." for each breakpoint.
>>
>> Thanks,
>> Erno
>>
>>
>> Eric M. Smith wrote:
>>> I am trying to debug a Ruby On Rails application.  I have a dozen or
>>> so breakpoints set in the execution path and when I step through
>>> them, every single line is touched, so I am fairly confident that
>>> the code is working up to a point.
>>>
>>> The problem comes when I click the "Continue" button.
>>> I have a stretch of 10 lines within my code that I want to continue
>>> through.  So I click the "Continue" button and the application
>>> continues.  But it doesn't continue to the next breakpoint.  It
>>> continues to completion as if the remaining breakpoints don't exist.
>>>
>>> Looking at the IDE log, I can see the following where I hit the
>>> continue button.
>>>
>>> FINE [org.rubyforge.debugcommons.RubyDebuggerProxy]: Sending command
>>> debugger: cont
>>> FINEST [org.rubyforge.debugcommons.Util]: Received Message: <message
>>> debug='true'>Processing: cont</message>
>>> FINEST [org.rubyforge.debugcommons.Util]: Received Message: <message
>>> debug='true'>Processing context: cont</message>
>>> FINEST [org.rubyforge.debugcommons.Util]: Received Message: <message
>>> debug='true'>Resumed Thread #<Thread:0xb5b42e08></message>
>>>
>>> But that's where the log ends.  Noting beyond it to say it hit a bug
>>> or skipped any breakpoints.
>>>
>>> I'm pretty sure I'll need to fill in a bug report, but just saying
>>> "Debugger doesn't honor all breakpoints" doesn't do anything to help
>>> determine what's happening.
>>>
>>> Any hints on how I should gather info for this one?
>>>
>>>
>>
>>

 « Return to Thread: [67cat][ruby][debugger] Debugger doesn't always honor breakpoints.