Closed Bug 1510463 Opened 6 years ago Closed 5 years ago

Remove requirement to interrupt() thread when adding breakpoints

Categories

(DevTools :: Debugger, enhancement, P3)

enhancement

Tracking

(firefox66 fixed)

RESOLVED FIXED
Firefox 66
Tracking Status
firefox66 --- fixed

People

(Reporter: loganfsmyth, Assigned: loganfsmyth)

References

Details

Attachments

(1 file)

The source actor currently enforces the requirement that the debugger should be paused before you are allowed to add a breakpoint.

This requirement does not seem to be required by any specific piece of the API design, and most importantly, is frustrating because it makes it difficult to avoid race conditions. Requests to the API take time, and when adding a breakpoint, a client can't know whether the server needs to be paused first withing sending a packet to check. It's possible for the state to change between the time that the state was checked, and when the breakpoint-add packet was sent to the server. We currently have race conditions around this if you attempt to add multiple breakpoints at once, because each request will dispatch an `interrupt` before the first response comes back to indicate that the server has paused, making it unclear who is responsible for later resuming the thread.
Priority: -- → P3
Attachment #9029460 - Attachment description: Bug 1510463 - Remove requirement to interrupt() thread when adding breakpoints. r=lsmyth → Bug 1510463 - Allow adding breakpoints without pausing. r=jlast
Depends on: 1512437
Pushed by lsmyth@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/3cef21809ef0
Allow adding breakpoints without pausing. r=jlast
https://hg.mozilla.org/mozilla-central/rev/3cef21809ef0
Status: NEW → RESOLVED
Closed: 5 years ago
Resolution: --- → FIXED
Target Milestone: --- → Firefox 66
🎉
Assignee: nobody → lsmyth
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: