Closed Bug 1717802 Opened 4 months ago Closed 25 days ago

Event BP doesn't work after reload

Categories

(DevTools :: Debugger, defect, P2)

defect

Tracking

(Fission Milestone:Future, firefox94 fixed)

RESOLVED FIXED
94 Branch
Fission Milestone Future
Tracking Status
firefox94 --- fixed

People

(Reporter: Honza, Assigned: bomsy)

References

(Blocks 2 open bugs)

Details

(Whiteboard: dt-fission-future, dt-perf-stability-mvp)

Attachments

(2 files)

Prefs:

  • fission.autostart => true
  • devtools.target-switching.server.enabled => true
  • fission.bfcacheInParent => true

STR:

  1. Load http://softwareishard.com/tests/fission/case1/index.html
  2. Open the Debugger panel and create Event BP for click
  3. Click into the iframe (odvarko.com), the Debugger should pause => OK
  4. Right click on the frame and pick "This Frame -> Reload Frame"
  5. Click into the iframe (odvarko.com), the Debugger doesn't pause => ERR

ER: The debugger should hit the event BP even after reload

Workaround: Remove and add the click BP (uncheck and check the checkbox)

Honza

From Alex on Slack:
We would need to pass these breakpoints via the watcher actor, like regular and xhr breakpoints. We are still calling the thread actor individually for these type of breakpoints

https://searchfox.org/mozilla-central/source/devtools/client/debugger/src/client/firefox/commands.js#335-337

There is another scenario where "This Frame -> Reload Frame" breaks BPs

  1. Load http://softwareishard.com/tests/fission/case1/index.html
  2. Create regular BP in odvarko.com.js, in postRequest method, e.g. line 4
  3. Check out the Breakpoints side panel, the BP is there
  4. Right click on the frame and pick "This Frame -> Reload Frame"
  5. Check out the Breakpoints side panel, the BP is there twice => ERR

Should we have another bug report for this?

STRs for DOM mutations Breakpoints:

  1. Load http://softwareishard.com/tests/fission/case1/index.html
  2. Create DOM mutation BP Break on subtree modification for <div id="resposeData">
  3. Click the POST button in the iframe on the page, the Debugger should pause
  4. Right click on the frame and pick "This Frame -> Reload Frame"
  5. Click the POST button in the iframe on the page, the Debugger doesn't pause -> ERR

This one doesn't work without Fission either. Note that DOM mutation BPs are supposed to be removed after reload. The only problem is that the BP isn't removed from the "DOM Mutation Breakpoints" side panel in case of frames.

Whiteboard: dt-fission-m3-triage → dt-fission-m3-mvp
Fission Milestone: --- → MVP
Assignee: nobody → hmanilla
Assignee: hmanilla → nobody

Temporally removing from M3 MVP to make room for higher priority work.

Fission Milestone: MVP → Future
Whiteboard: dt-fission-m3-mvp → dt-fission-future
Severity: -- → S3
Priority: -- → P2
Whiteboard: dt-fission-future → dt-fission-future, dt-perf-stability-triage
Blocks: 1687261
Whiteboard: dt-fission-future, dt-perf-stability-triage → dt-fission-future, dt-perf-stability-mvp

(In reply to Jan Honza Odvarko [:Honza] (always need-info? me) from comment #2)

There is another scenario where "This Frame -> Reload Frame" breaks BPs

  1. Load http://softwareishard.com/tests/fission/case1/index.html
  2. Create regular BP in odvarko.com.js, in postRequest method, e.g. line 4
  3. Check out the Breakpoints side panel, the BP is there
  4. Right click on the frame and pick "This Frame -> Reload Frame"
  5. Check out the Breakpoints side panel, the BP is there twice => ERR

Should we have another bug report for this?

Yes, this looks like a different issue. I opened Bug 1728587

See Also: → 1728587

(In reply to Jan Honza Odvarko [:Honza] (always need-info? me) from comment #3)

STRs for DOM mutations Breakpoints:

  1. Load http://softwareishard.com/tests/fission/case1/index.html
  2. Create DOM mutation BP Break on subtree modification for <div id="resposeData">
  3. Click the POST button in the iframe on the page, the Debugger should pause
  4. Right click on the frame and pick "This Frame -> Reload Frame"
  5. Click the POST button in the iframe on the page, the Debugger doesn't pause -> ERR

This one doesn't work without Fission either. Note that DOM mutation BPs are supposed to be removed after reload. The only problem is that the BP isn't removed from the "DOM Mutation Breakpoints" side panel in case of frames.

Hey Honza,
Are you still able to reproduce this?
I can't reproduce, but i also could not find <div id="resposeData"> element, so i used the <body> of the iframe.
Pls confirm you can still repro and the STR is still valid.
Thanks

Flags: needinfo?(odvarko)

(In reply to Hubert Boma Manilla (:bomsy) from comment #6)

Are you still able to reproduce this?

No, I can't repro anymore.
The DOM mutation breakpoint seems to be properly removed from the "DOM Mutation Breakpoints" side panel (in the Debugger panel).

I can't reproduce, but i also could not find <div id="resposeData"> element, so i used the <body> of the iframe.

It's the green text within the iframe {response must be displayed here}

Flags: needinfo?(odvarko)
Assignee: nobody → hmanilla
Status: NEW → ASSIGNED
Pushed by hmanilla@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/22900522693f
[devtools] Add support for event breakpoints via the watcher actor r=ochameau,devtools-backward-compat-reviewers,jdescottes
https://hg.mozilla.org/integration/autoland/rev/38352a9dc127
[devtools] Fission test for event breakpoint with remote frames r=ochameau
Status: ASSIGNED → RESOLVED
Closed: 25 days ago
Resolution: --- → FIXED
Target Milestone: --- → 94 Branch
You need to log in before you can comment on or make changes to this bug.