Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
Bug 532035 - Support refreshing breakpoints
Summary: Support refreshing breakpoints
Status: RESOLVED FIXED
Alias: None
Product: CDT
Classification: Tools
Component: cdt-debug-dsf-gdb (show other bugs)
Version: 9.5.0   Edit
Hardware: PC Linux
: P3 normal (vote)
Target Milestone: 9.5.0   Edit
Assignee: Jonah Graham CLA
QA Contact: Jonah Graham CLA
URL:
Whiteboard:
Keywords:
Depends on:
Blocks: 532058
  Show dependency tree
 
Reported: 2018-03-05 15:05 EST by Jonah Graham CLA
Modified: 2021-02-11 09:37 EST (History)
3 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Jonah Graham CLA 2018-03-05 15:05:17 EST
The breakpoints view in CDT, unlike most of the other views, does not support refreshing. The bug is to add refreshing support.

Although GDB appears to normally provide all the necessary async messages (e.g breakpoint-created), under some GDB-like debuggers it is desirable to be able to force a refresh.
Comment 1 Eclipse Genie CLA 2018-03-05 15:07:00 EST
New Gerrit change created: https://git.eclipse.org/r/118716
Comment 2 Eclipse Genie CLA 2018-03-05 15:07:03 EST
New Gerrit change created: https://git.eclipse.org/r/118715
Comment 3 Eclipse Genie CLA 2018-03-05 15:07:06 EST
New Gerrit change created: https://git.eclipse.org/r/118714
Comment 6 Umair Sair CLA 2021-02-10 14:00:33 EST
Hi Jonah,

I am working on 532076. I am trying to understand how the refresh and synchronize logic works? How the user can invoke it?
Comment 7 Jonah Graham CLA 2021-02-10 14:27:42 EST
Great, I am glad to hear that you are looking at Bug 532076 - it is something that never got revisited by me :-(

The refresh buttons need to be enabled by the user. Window -> Perspective -> Customize Perspective -> Action Set Availability (tab) -> Debug Update Modes (checkbox)

See https://imgur.com/XqDZ7RG.png

That makes the Refresh button visible in all applicable views of CDT (including the Breakpoints view)

You can also enable it in a product by adding to some plugin.xml:

   <extension
         point="org.eclipse.ui.perspectiveExtensions">
      <perspectiveExtension
            targetID="org.eclipse.debug.ui.DebugPerspective">
         <actionSet
               id="org.eclipse.cdt.dsf.debug.ui.updateModes">
         </actionSet>
      </perspectiveExtension>
   </extension>


HTH
Comment 8 Umair Sair CLA 2021-02-11 00:36:18 EST
Thanks Jonah!

I just tried refreshing breakpoint view and it seems its broken when multiple breakpoints are present, there is an issue with collector in MIBreakpointsSynchronizer.doTargetBreakpointsSynchronized(..) which causes runtime exception.
Comment 9 Jonah Graham CLA 2021-02-11 09:37:04 EST
I just tried a quick test case (GDB 9.2, Eclipse CPP 2020-12) and the refresh appeared to work (the breakpoints weren't actually out of sync though). Please file a new bug with some steps to reproduce, along with the exception and lets see if we can solve this.