Closed Bug 1578975 Opened 5 years ago Closed 1 year ago

Remove message manager codepath in Storage actor

Categories

(DevTools :: Storage Inspector, task, P3)

task

Tracking

(Fission Milestone:Future, firefox111 fixed)

RESOLVED FIXED
111 Branch
Fission Milestone Future
Tracking Status
firefox111 --- fixed

People

(Reporter: jdescottes, Assigned: ochameau)

References

(Blocks 2 open bugs)

Details

(Whiteboard: dt-fission-future)

Attachments

(2 files)

When fission.autostart is enabled the message manager will not be available when debugging frames. The storage actor is directly using the message manager to exchange messages between its content and its parent actors.

Instead of directly using the message manager, we should use APIs provided by DevTools (maybe on debugger-server-connection?) that would transparently use the message manager or js-window-actors.

https://searchfox.org/mozilla-central/search?q=mm.&case=false&regexp=false&path=actors%2Fstorage

Is this message manager the process message manager? if that is the case, we can close this.

Flags: needinfo?(jdescottes)

(In reply to Yulia Startsev [:yulia] from comment #1)

Is this message manager the process message manager? if that is the case, we can close this.

No, it's the message manager provided by setupInParent, so it's the frameloader's message manager.
https://searchfox.org/mozilla-central/rev/e5327b05c822cdac24e233afa37d72c0552dbbaf/devtools/server/connectors/frame-connector.js#99

Flags: needinfo?(jdescottes)
Whiteboard: dt-fission → dt-fission-reserve

Tracking Fission DevTools bugs for Fission Nightly (M6)

Fission Milestone: --- → M6
Component: Framework → Storage Inspector

dt-fission-reserve bugs do not need to block Fission Nightly (M6).

Fission Milestone: M6 → ---

Tracking dt-fission-reserve bugs for Fission MVP until we know whether they really need to block Fission or not.

Fission Milestone: --- → MVP

Moving old "dt-fission-reserve" bugs to "dt-fission-future" because they don't block Fission MVP.

Fission Milestone: MVP → Future
Whiteboard: dt-fission-reserve → dt-fission-future
Severity: normal → S3

Slightly refocusing the purpose of this bug to remove message manager related code in the storage actor.
Now that all storage types are being listened via the Resource Watchers (bug 1772822), including extension storage (bug 1666534),
the storages actors are no longer instantiated "the old way", from the target-scoped storage actor.
Instead they are all instantiated from the right process, from resource watchers.

It means that we can drop all cross process messaging from actors/storage.js and probably simplify the codebase by merging each actor into each related resource watcher.

Depends on: 1666534, 1772822
Summary: Stop using message manager in Storage actor → Remove message manager codepath in Storage actor

This glue, necessary to communicated between content and parent processes
was only necessary when manually spawning the storage actors.
Now that this code is only used via ResourceWatcher, running in the right process
right away, we no longer need any cross process communication.

Assignee: nobody → poirot.alex
Status: NEW → ASSIGNED
Blocks: 1810095
Blocks: 1721852
Pushed by apoirot@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/b9bca9f89901
[devtools] Remove now-useless pre-resource-watchers cross process messaging code from storage actor. r=devtools-reviewers,jdescottes
https://hg.mozilla.org/integration/autoland/rev/5d70f7333ecc
[devtools] Remove now-unused setupInParent code. r=devtools-reviewers,jdescottes
Status: ASSIGNED → RESOLVED
Closed: 1 year ago
Resolution: --- → FIXED
Target Milestone: --- → 111 Branch
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: