Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [tcf-dev] Breakpoints Sharing

Eugene,

that's what we found out yesterday ...

We thought that the breakpoints were owned by a connection and that we
could not modify them from another channel ... we were wrong :(

Sorry

We now have to rethink it all ...

Thanks

DERF

On 14/10/2015 21:20, Eugene Tarassov wrote:
The reason breakpoint sharing is not fully supported has nothing to do with the agent. Sharing is intentionally disabled on the Eclipse side. The problem is Eclipse breakpoint manager is not designed to support remote breakpoints. The manager is incredibly convoluted piece of software. Even displaying remote breakpoints was a major hack and it still does not work reliably. Perhaps, the biggest problem with the breakpoint manger is it uses Eclipse jobs (a thread pool), but does not support adequate thread synchronization. I'll have another look into the manager, may be the latest version is more sane.

Eugene

-----Original Message-----
From: tcf-dev-bounces@xxxxxxxxxxx [mailto:tcf-dev-bounces@xxxxxxxxxxx] On Behalf Of Frederic Leger
Sent: Wednesday, October 14, 2015 1:43 AM
To: tcf-dev@xxxxxxxxxxx
Subject: [tcf-dev] Breakpoints Sharing

All,

we have the same kind of problem with sharing breakpoints than Khaled,
and have started to think about it. Wind Rive is already starting a
prototype for it.

We would like your advice here, to make sure we are doing what is
appropriate, and to make sure we are not forgetting something.

We propose to:

    - Add the -DENABLE_BreakpointsSharing support to the agent build.

    - If enabled, the Breakpoints.getCapabilities() would return the
      "BreakpointsSharing":True capability.

    - When a breakpoint is created (Breakpoints.add()), it is up to the
      creator client to set the breakpoint "Shared" property to either
      True or False (default would be False from an agent point of view).

    - When another client wants to modify (Breakpoints.set()) the
      breakpoint, if the "Shared" property of the breakpoint is True:

        + the following properties may be changed (according to
          capabilities too):

         * "AccessMode"
         * "Action"
         * "BreakpointType"
         * "Column"
         * "Condition"
         * "ContextIds"
         * "ContextNames"
         * "ContextQuery"
         * "Enabled"
         * "EventArgs"
         * "EventType"
         * "ExecPaths"
         * "File"
         * "FileLine"
         * "IgnoreCount"
         * "LineOffset"
         * "Location"
         * "Mask"
         * "Pattern"
         * "SkipPrologue"
         * "StopGroup"
         * "Temporary"
         * "Time"
         * "TimeScale"
         * "TimeUnits"

        + the following properties may NOT be changed:

         * "ClientData" - This is typically Eclipse data which may break
                           the breakpoints view if changed.
         * "ID"
         * "Size"
         * "Shared"

On a workflow point of view:

    - When the breakpoint creator exits, all its breakpoints are removed,
      even if "set()" by another client.
    - We are not sure if a breakpoint may be removed by another client
      than the creator ... is it useful ?

Comments or ideas are welcome, we are starting the prototype now :)

Hope this helps

DERF

PS : we plan on doing the same for pathmaps later on.
_______________________________________________
tcf-dev mailing list
tcf-dev@xxxxxxxxxxx
To change your delivery options, retrieve your password, or unsubscribe from this list, visit
https://dev.eclipse.org/mailman/listinfo/tcf-dev


This email and any attachments are intended for the sole use of the named recipient(s) and contain(s) confidential information that may be proprietary, privileged or copyrighted under applicable law. If you are not the intended recipient, do not read, copy, or forward this email message or any attachments. Delete this email message and any attachments immediately.

_______________________________________________
tcf-dev mailing list
tcf-dev@xxxxxxxxxxx
To change your delivery options, retrieve your password, or unsubscribe from this list, visit
https://dev.eclipse.org/mailman/listinfo/tcf-dev



Back to the top