Closed Bug 1709947 Opened 4 years ago Closed 4 years ago

Netmonitor still throws "getRequestCookies: can't access property "request", this._client is undefined"" on target switching

Categories

(DevTools :: Netmonitor, defect)

defect

Tracking

(Fission Milestone:M7a, firefox90 fixed)

RESOLVED FIXED
90 Branch
Fission Milestone M7a
Tracking Status
firefox90 --- fixed

People

(Reporter: ochameau, Assigned: ochameau)

References

(Blocks 1 open bug)

Details

(Whiteboard: dt-fission-m3-mvp)

Attachments

(1 file)

I can still see getRequestCookies: can't access property "request", this._client is undefined" exceptions when applying bug 1686748 and enabling devtools.target-switching.server.enabled.
Even with https://phabricator.services.mozilla.com/D113167, I still see such exception when running:
./mach mochitest --headless devtools/client/netmonitor/src/har/test/browser_net_har_post_data
(not that it fails intermittently, but quite frequently)

I imagine this exception can happen when doing target switching and would be more frequent once we enable the JSWindowActor based targets by default.

All these get* methods were hosted on WebConsole fronts,
but weren't related to WebConsole actor.
Instead they all target the NetworkEvent actors.
These actors runs in the parent process, where we listen for network requests.

Going through console fronts were an issue during target switching
as there is a small window in between the previous and new target where
there is no webconsole front being alive. The previous's page one is destroyed
and the new page's one is not yet available.
All that while the network event actors are always available.

We could only remove these get* methods once we refactor all tests still using them.
Also it would be great to followup and stop having one actor per request,
and instead fetch these attributes via the network-parent actor.
By doing this, we could finaly drop the last usage of DevToolsClient.request and make _requestData much simplier.

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

Note that there is also this bug and comment Bug 1704981 comment #10

@Bomsy @Alex - is it the same thing?

Flags: needinfo?(poirot.alex)
Flags: needinfo?(hmanilla)

As said in comment 0, bug 1704981 isn't enough.
The phabricator link I refered to is the one submitted in Bug 1704981 comment #10.

Flags: needinfo?(poirot.alex)

The errors are similar and they are probably triggered during target switching but the issues that cause them are different.
Thanks

Flags: needinfo?(hmanilla)
Fission Milestone: --- → M8
Whiteboard: dt-fission-m3-triage → dt-fission-m3-mvp
Attachment #9220690 - Attachment description: Bug 1709947 - Avoid going through webconsole front to do request for network event actors. → Bug 1709947 - [devtools] Avoid going through webconsole front to do request for network event actors.
Pushed by apoirot@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/60b40ab7d0b8 [devtools] Avoid going through webconsole front to do request for network event actors. r=bomsy
Status: ASSIGNED → RESOLVED
Closed: 4 years ago
Resolution: --- → FIXED
Target Milestone: --- → 90 Branch
Fission Milestone: M8 → M7a

== Change summary for alert #30086 (as of Fri, 14 May 2021 10:16:16 GMT) ==

Improvements:

Ratio Suite Test Platform Options Absolute values (old vs new)
3% Heap Unclassified windows10-64-shippable-qr tp6 59,179,109.12 -> 57,511,741.90
1% Heap Unclassified windows10-64-shippable-qr tp6 58,258,486.19 -> 57,518,856.15

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

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

Attachment

General

Created:
Updated:
Size: