"###!!! [Parent][RPCChannel] Error: Channel error: cannot send/recv" upon plugin crash

RESOLVED INVALID

Status

()

P5
normal
RESOLVED INVALID
7 years ago
a year ago

People

(Reporter: jruderman, Unassigned)

Tracking

Trunk
x86
Mac OS X
Points:
---

Firefox Tracking Flags

(Not tracked)

Details

(Reporter)

Description

7 years ago
dom/plugins/test/reftest/pluginproblemui-direction-1.html intentionally crashes a plugin and produces:

###!!! [Parent][RPCChannel] Error: Channel error: cannot send/recv

Since it beings with "###!!!", my tools and I assume it's meant to be treated like an assertion.  If that's not the case, please change it to not use "###!!!".

Comment 1

7 years ago
The problem here is that these IPDL errors are frequently worthy of being treated like assertions. In this particular case, however, the sending error is expected since the plugin process no longer exists. I'm not sure what kind of mitigation we can provide here.
(Reporter)

Comment 2

7 years ago
You should probably do what the rest of Gecko does, and use NS_WARNING for warnings and NS_ERROR for assertions.  If you make up your own thing that's "sometimes like a warning and sometimes like an assertion" you're not going to get the right bug reports and Tinderbox oranges.
(In reply to comment #2)
> If you make up your own thing that's
> "sometimes like a warning and sometimes like an assertion"

I think there's some miscommunication ... what Josh said is right: these are error messages that are usually omg-error-plz-file-a-bug but sometimes, e.g. during tests that crash subprocesses, can be ignored.  (The word "assertion" is a bit overloaded, let's use "error" instead.)

That said, let's just make print ReportConnectionError()'s message conditional on LoggingEnabled().  That's not going to miss many bug-worthy errors, and seems a lot better than making up some new IPC-error-count tracking mechanism for mochitests or Jesse's tool.

Updated

a year ago
Status: NEW → RESOLVED
Last Resolved: a year ago
Priority: -- → P5
Resolution: --- → INVALID
You need to log in before you can comment on or make changes to this bug.