Closed Bug 1832585 Opened 2 years ago Closed 2 years ago

Stop clearing most reducers on navigation

Categories

(DevTools :: Debugger, task)

task

Tracking

(firefox115 fixed)

RESOLVED FIXED
115 Branch
Tracking Status
firefox115 --- fixed

People

(Reporter: ochameau, Assigned: ochameau)

References

(Regressed 1 open bug)

Details

Attachments

(4 files, 1 obsolete file)

In order to support breakpoint on unload/pagehide/navigation (bug 1806796) we have to stop wiping most reducer data on navigation (NAVIGATE action).

Wiping the data makes us loose all data about the previous page when we are hitting the late breakpoint.

We should stop clearing reducers on navigation and instead only clear
them when each target/thread is removed.
Work has been done to ensure clearing the reducers per thread removal.
We should now be able to drop full wiping of data on NAVIGATE.

Doing this allows to keep the previous page targets data available in
the reducer and so when we are hitting a late breakpoint (for ex on unload)
all data about the previous page is still available and we can pause
correctly. Otherwise, as NAVIGATE action is fired at the beginning of the navigation,
before the unload event is fired, it would have clear most debugger data about sources, breakpoints,...

Assignee: nobody → poirot.alex
Status: NEW → ASSIGNED

Now that we stop clearing reducer entirely on navigation,
it is important to verify that we clear them on each target removal.

The selected location holds a reference to a source and sometimes a sourceActor,
which may become irrelevant when navigating or when a target is removed.
Not doing this leads to editor being kept opened for sources which are now defunct.

These test were trying to fetch http:// URL which were redirected to https://
and the fetch done by createVersionizedHttpTestServer was throwing.

Comment on attachment 9335413 [details]
Bug 1832585 - [devtools] Fix test using createVersionizedHttpTestServer on http3.

Revision D178779 was moved to bug 1834713. Setting attachment 9335413 [details] to obsolete.

Attachment #9335413 - Attachment is obsolete: true
Pushed by apoirot@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/78ee8f48414c [devtools] Clear selected location in sources reducer on target removal. r=bomsy https://hg.mozilla.org/integration/autoland/rev/1e61eb6a990f [devtools] Clear sources-tree focused item and expanded on thread removal. r=bomsy,devtools-reviewers https://hg.mozilla.org/integration/autoland/rev/e6d21a38489a [devtools] Stop clearing debugger reducers on NAVIGATE. r=bomsy,devtools-reviewers https://hg.mozilla.org/integration/autoland/rev/e1e61ea29884 [devtools] Verify reducer clearance on target removal. r=bomsy,devtools-reviewers
Regressions: 1835255

== Change summary for alert #38481 (as of Fri, 26 May 2023 17:43:49 GMT) ==

Regressions:

Ratio Test Platform Options Absolute values (old vs new)
43% reload-debugger:parent-process objects-with-stacks linux1804-64-tsan-qr 23.08 -> 33.00
35% reload-debugger:parent-process objects-with-stacks linux1804-64-shippable-qr 24.00 -> 32.50
35% reload-debugger:parent-process objects-with-stacks linux1804-64-qr 24.30 -> 32.75

For up to date results, see: https://treeherder.mozilla.org/perfherder/alerts?id=38481

You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: