Reduce frequent warnings from ConduitClosed
Categories
(WebExtensions :: General, task, P3)
Tracking
(Not tracked)
People
(Reporter: jstutte, Unassigned)
References
(Blocks 1 open bug)
Details
(Whiteboard: [addons-jira])
Attachments
(1 obsolete file)
There are frequent warnings in our treeherder log files like:
[task 2023-04-19T07:39:36.955Z] 07:39:36 INFO - PID 964 | [Child 6348, Main Thread] WARNING: JSWindowActorChild::SendRawMessage (Conduits, ConduitClosed) not sent: !CanSend() || !mManager || !mManager->CanSend(): file /builds/worker/checkouts/gecko/dom/ipc/jsactor/JSWindowActorChild.cpp:57
Most likely they come from here.
I am not familiar with actors in JS, but I assume we can check some equivalent of CanSend()
before trying to send it? It might also be that No, that is already the case with didDestroy
should call Close
with a flag that does not try to send back something, given we are already destroyed?silent
.
Comment 1•2 years ago
|
||
This Conduit
component refers to the developer infrastructure used for Firefox development (Phabricator, Lando, etc). Moving to a component that is likely closer to the correct one.
Reporter | ||
Comment 2•2 years ago
|
||
Thanks and sorry for the noise, actually the message generating JS is apparently part of WebExtensions.
Updated•2 years ago
|
Updated•2 years ago
|
Reporter | ||
Comment 3•2 years ago
|
||
Updated•2 years ago
|
Reporter | ||
Comment 5•2 years ago
|
||
Note that bug 1832242 reduces the unintentional spam in non-DEBUG builds.
Comment 6•2 years ago
|
||
(In reply to Nika Layzell [:nika] (ni? for response) from bug 1830445 comment #3)
The
Conduits
actor is from WebExtensions, so moving this over there. This error just means that the actor is dead, and WebExtensions conduits are trying to send theConduitClosed
message over them.The calling code even does an empty catch block around the send call, so perhaps it should just check if the actor is still alive before sending: https://searchfox.org/mozilla-central/rev/445a5ab684b73eb56d807d0f3b2fabcc85a7c3dd/toolkit/components/extensions/ConduitsChild.jsm#136
Reporter | ||
Comment 7•1 years ago
|
||
(In reply to Kris Maglione [:kmag] from comment #6)
(In reply to Nika Layzell [:nika] (ni? for response) from bug 1830445 comment #3)
The
Conduits
actor is from WebExtensions, so moving this over there. This error just means that the actor is dead, and WebExtensions conduits are trying to send theConduitClosed
message over them.The calling code even does an empty catch block around the send call, so perhaps it should just check if the actor is still alive before sending: https://searchfox.org/mozilla-central/rev/445a5ab684b73eb56d807d0f3b2fabcc85a7c3dd/toolkit/components/extensions/ConduitsChild.jsm#136
This code now moved here, but is still the same.
Updated•1 year ago
|
Description
•