TEST-UNEXPECTED-FAIL | devtools/server/tests/unit/test_extension_storage_actor.js when run in the Thunderbird environment
Categories
(Thunderbird :: General, defect)
Tracking
(Not tracked)
People
(Reporter: jorgk-bmo, Assigned: darktrojan)
References
(Regression)
Details
(Keywords: regression)
Attachments
(1 file)
TEST-UNEXPECTED-FAIL | devtools/server/tests/unit/test_extension_storage_actor.js | xpcshell return code: 0
PID 2505 | DBG-TEST: resource://gre/modules/ConduitsChild.jsm:102: error: sendRemoveListener on closed conduit 86029c60ab0af5691a497be5f5a0710695e23242@temporary-addon.2
PID 2505 | DBG-TEST: resource://gre/modules/ConduitsChild.jsm:102: error: sendRemoveListener on closed conduit 86029c60ab0af5691a497be5f5a0710695e23242@temporary-addon.6
PID 2505 | DBG-TEST: resource://gre/modules/ConduitsChild.jsm:102: error: sendRemoveListener on closed conduit 86029c60ab0af5691a497be5f5a0710695e23242@temporary-addon.10
TEST-UNEXPECTED-FAIL | devtools/server/tests/unit/test_extension_storage_actor.js | test_panel_data_matches_extension_with_no_pages_open - [test_panel_data_matches_extension_with_no_pages_open : 265] A promise chain failed to handle a rejection: [Exception... "Unexpected error" nsresult: "0x8000ffff (NS_ERROR_UNEXPECTED)" location: "JS frame :: /Users/cltbld/tasks/task_1574227217/build/tests/xpcshell/head.js :: _do_main :: line 246" data: n
TEST-UNEXPECTED-FAIL | devtools/server/tests/unit/test_extension_storage_actor.js | test_panel_data_matches_extension_with_no_pages_open - [test_panel_data_matches_extension_with_no_pages_open : 265] A promise chain failed to handle a rejection: [Exception... "Component is not available" nsresult: "0x80040111 (NS_ERROR_NOT_AVAILABLE)" location: "JS frame :: /Users/cltbld/tasks/task_1574227217/build/tests/xpcshell/head.js :: _do_main :: line
Quite clearly from bug 1577498.
| Reporter | ||
Comment 1•6 years ago
|
||
These changesets from bug 1577498
https://hg.mozilla.org/mozilla-central/rev/0ff3601d136a
https://hg.mozilla.org/mozilla-central/rev/0f3f87195689
https://hg.mozilla.org/mozilla-central/rev/ab07de86ac04
seem to be extension related. Maybe a case for Geoff (I've seen too much "Paw Patrol" with my son).
| Assignee | ||
Comment 2•6 years ago
|
||
You're right that it's bug 1577498. I don't know enough about actors to see how that would affect Thunderbird differently though. Tomislav?
Comment 3•6 years ago
|
||
I don't know enough about Thunderbird to see why it would be affected differently, except from the other comments in that file that seem to disable tests without OOP extensions
Is there a TC log or something I can look at for more details?
| Assignee | ||
Comment 4•6 years ago
|
||
Here's a failure log from a recent run: https://firefoxci.taskcluster-artifacts.net/KEln6plhS5eVKIUaoZspIA/0/public/logs/live_backing.log
I think you're right and it's the same reason that caused us to switch off some tests before, so I'm going to do the same here unless you have any better ideas.
| Assignee | ||
Comment 5•6 years ago
|
||
| Assignee | ||
Updated•6 years ago
|
Comment 6•6 years ago
|
||
In the logs linked from comment 4 I see that right before the failure there are the following errors logged:
JavaScript error: resource://gre/modules/ConduitsChild.jsm, line 152: Error: RunListener for closed conduit b360087f42466ad81eed9884a4f2e6f8f046f40a@temporary-addon.10: ({childId:"b360087f42466ad81eed9884a4f2e6f8f046f40a@temporary-addon.10", handlingUserInput:false, listenerId:11, path:"storage.onChanged", args:{}})
...
JavaScript Error: "sendRemoveListener on closed conduit b360087f42466ad81eed9884a4f2e6f8f046f40a@temporary-addon.10" {file: "resource://gre/modules/ConduitsChild.jsm" line: 102}
_send@resource://gre/modules/ConduitsChild.jsm:102:13
removeListener@resource://gre/modules/ExtensionChild.jsm:1095:34
removeListener@resource://gre/modules/ExtensionChild.jsm:1320:40
getAPI/register/<.storage.onChanged@chrome://extensions/content/child/ext-storage.js:333:22
removeListener@resource://gre/modules/ExtensionCommon.jsm:2515:7
revoke@resource://gre/modules/ExtensionCommon.jsm:2537:12
close@resource://gre/modules/ExtensionCommon.jsm:2542:10
unload@resource://gre/modules/ExtensionCommon.jsm:896:11
unload@resource://gre/modules/ExtensionPageChild.jsm:261:11
unload@resource://gre/modules/ExtensionPageChild.jsm:310:11
destroyExtensionContext@resource://gre/modules/ExtensionPageChild.jsm:494:15
observe@resource://gre/modules/ExtensionPageChild.jsm:407:12
_do_main@/builds/worker/workspace/build/tests/xpcshell/head.js:246:6
...
Which suggests me that the failure is very likely triggered because the test case is creating a content page (using ExtensionTestUtils.loadContentPage) which has subscribed a storage.onChanged event listener and then the test task is destroying the content page before the storage.onChanged has been able to reach that extension context:
I think that a reasonable way to keep the test running when e10s is disabled (which currently happens for Thunderbird and GeckoView, but this xpcshell test isn't executed on GeckoView and so it triggers a failure on for Thunderbird) is to make the test case to wait for storage.onChanged to have been fired before proceeding to destroy the content page.
I'll comment on phabricator about the actual change that I had in mind, so that Geoff can give it a try and see if it also prevent the failure as I think.
Updated•6 years ago
|
Comment 8•6 years ago
|
||
| bugherder | ||
Updated•5 years ago
|
Description
•