Closed
Bug 1483444
Opened 6 years ago
Closed 6 years ago
Intermittent browser/base/content/test/performance/browser_startup_content.js | should have no unexpected modules loaded on content process startup - Got 3, expected 0
Categories
(Firefox :: General, defect, P5)
Firefox
General
Tracking
()
RESOLVED
FIXED
Firefox 63
Tracking | Status | |
---|---|---|
firefox63 | --- | fixed |
People
(Reporter: intermittent-bug-filer, Assigned: kmag)
References
Details
(Keywords: intermittent-failure)
Attachments
(1 file)
Filed by: aiakab [at] mozilla.com https://treeherder.mozilla.org/logviewer.html#?job_id=194013166&repo=mozilla-central https://queue.taskcluster.net/v1/task/Nj-Gvd9kQuyiDY_BoYUOqg/runs/0/artifacts/public/logs/live_backing.log 02:51:19 INFO - TEST-START | browser/base/content/test/performance/browser_startup_content.js 02:51:19 INFO - TEST-PASS | browser/base/content/test/performance/browser_startup_content.js | should have no unexpected components loaded on content process startup - 02:51:19 INFO - TEST-PASS | browser/base/content/test/performance/browser_startup_content.js | all components whitelist entries should have been used - 02:51:19 INFO - TEST-INFO | started process screenshot 02:51:19 INFO - TEST-INFO | screenshot: exit 0 02:51:19 INFO - Buffered messages logged at 02:51:19 02:51:19 INFO - Entering test bound 02:51:19 INFO - Buffered messages finished 02:51:19 INFO - TEST-UNEXPECTED-FAIL | browser/base/content/test/performance/browser_startup_content.js | should have no unexpected modules loaded on content process startup - Got 3, expected 0 02:51:19 INFO - Stack trace: 02:51:19 INFO - chrome://mochikit/content/browser-test.js:test_is:1308 02:51:19 INFO - chrome://mochitests/content/browser/browser/base/content/test/performance/browser_startup_content.js:null:152 02:51:19 INFO - chrome://mochikit/content/browser-test.js:Tester_execTest/<:1106 02:51:19 INFO - chrome://mochikit/content/browser-test.js:Tester_execTest:1097 02:51:19 INFO - chrome://mochikit/content/browser-test.js:nextTest/<:994 02:51:19 INFO - chrome://mochikit/content/tests/SimpleTest/SimpleTest.js:SimpleTest.waitForFocus/waitForFocusInner/focusedOrLoaded/<:795 02:51:19 INFO - Not taking screenshot here: see the one that was previously logged 02:51:19 INFO - TEST-UNEXPECTED-FAIL | browser/base/content/test/performance/browser_startup_content.js | Unexpected modules loaded during content process startup: resource://gre/actors/BrowserChild.jsm - 02:51:19 INFO - Stack trace: 02:51:19 INFO - chrome://mochitests/content/browser/browser/base/content/test/performance/browser_startup_content.js:null:156 02:51:19 INFO - chrome://mochikit/content/browser-test.js:Tester_execTest/<:1106 02:51:19 INFO - chrome://mochikit/content/browser-test.js:Tester_execTest:1097 02:51:19 INFO - chrome://mochikit/content/browser-test.js:nextTest/<:994 02:51:19 INFO - chrome://mochikit/content/tests/SimpleTest/SimpleTest.js:SimpleTest.waitForFocus/waitForFocusInner/focusedOrLoaded/<:795 02:51:19 INFO - Stack that loaded resource://gre/actors/BrowserChild.jsm: 02:51:19 INFO - 02:51:19 INFO - 0 getActor() ["resource://gre/modules/ActorManagerChild.jsm":68] 02:51:19 INFO - 1 receiveMessage() ["resource://gre/modules/ActorManagerChild.jsm":91] 02:51:19 INFO - 02:51:19 INFO - Not taking screenshot here: see the one that was previously logged 02:51:19 INFO - TEST-UNEXPECTED-FAIL | browser/base/content/test/performance/browser_startup_content.js | Unexpected modules loaded during content process startup: resource://gre/actors/UnselectedTabHoverChild.jsm - 02:51:19 INFO - Stack trace: 02:51:19 INFO - chrome://mochitests/content/browser/browser/base/content/test/performance/browser_startup_content.js:null:156 02:51:19 INFO - chrome://mochikit/content/browser-test.js:Tester_execTest/<:1106 02:51:19 INFO - chrome://mochikit/content/browser-test.js:Tester_execTest:1097 02:51:19 INFO - chrome://mochikit/content/browser-test.js:nextTest/<:994 02:51:19 INFO - chrome://mochikit/content/tests/SimpleTest/SimpleTest.js:SimpleTest.waitForFocus/waitForFocusInner/focusedOrLoaded/<:795 02:51:19 INFO - Stack that loaded resource://gre/actors/UnselectedTabHoverChild.jsm: 02:51:19 INFO - 02:51:19 INFO - 0 getActor() ["resource://gre/modules/ActorManagerChild.jsm":68] 02:51:19 INFO - 1 handleActorEvent() ["resource://gre/modules/ActorManagerChild.jsm":83] 02:51:19 INFO - 2 handleActorEvent() ["self-hosted":1030] 02:51:19 INFO - 02:51:19 INFO - Not taking screenshot here: see the one that was previously logged 02:51:19 INFO - TEST-UNEXPECTED-FAIL | browser/base/content/test/performance/browser_startup_content.js | Unexpected modules loaded during content process startup: resource://gre/actors/WebNavigationChild.jsm - 02:51:19 INFO - Stack trace: 02:51:19 INFO - chrome://mochitests/content/browser/browser/base/content/test/performance/browser_startup_content.js:null:156 02:51:19 INFO - chrome://mochikit/content/browser-test.js:Tester_execTest/<:1106 02:51:19 INFO - chrome://mochikit/content/browser-test.js:Tester_execTest:1097 02:51:19 INFO - chrome://mochikit/content/browser-test.js:nextTest/<:994 02:51:19 INFO - chrome://mochikit/content/tests/SimpleTest/SimpleTest.js:SimpleTest.waitForFocus/waitForFocusInner/focusedOrLoaded/<:795 02:51:19 INFO - Stack that loaded resource://gre/actors/WebNavigationChild.jsm: 02:51:19 INFO - 02:51:19 INFO - 0 getActor() ["resource://gre/modules/ActorManagerChild.jsm":68] 02:51:19 INFO - 1 receiveMessage() ["resource://gre/modules/ActorManagerChild.jsm":91] 02:51:19 INFO - 02:51:19 INFO - TEST-PASS | browser/base/content/test/performance/browser_startup_content.js | all modules whitelist entries should have been used - 02:51:19 INFO - Leaving test bound
Updated•6 years ago
|
Product: Chat Core → Firefox
Version: trunk → unspecified
Comment 1•6 years ago
|
||
This seems caused by the patches from bug 1472491.
Blocks: 1472491
Flags: needinfo?(kmaglione+bmo)
Assignee | ||
Comment 2•6 years ago
|
||
This is because TV runs the test multiple times, and these modules get loaded relatively early in content process startup, but not immediately. We should probably just skip this test in verify mode.
Assignee: nobody → kmaglione+bmo
Flags: needinfo?(kmaglione+bmo)
Assignee | ||
Comment 3•6 years ago
|
||
Verify mode runs tests multiple times. In the case of browser_startup_content.js, this gives extra modules a chance to load before subsequent runs, which leads to failures. Since there's no particular reason to run this test in verify mode, the obvious solution is to just disable it.
Comment 4•6 years ago
|
||
Comment on attachment 9001346 [details] Bug 1483444: Skip browser_startup_content in verify mode. r=Felipe :Felipe Gomes (needinfo me!) has approved the revision.
Attachment #9001346 -
Flags: review+
Assignee | ||
Comment 5•6 years ago
|
||
https://hg.mozilla.org/integration/mozilla-inbound/rev/96e45af1d9de74ecc146b97cac13aecfa9a54867 Bug 1483444: Skip browser_startup_content in verify mode. r=Felipe DONTBUILD
Comment 6•6 years ago
|
||
Come to think of it, browser_startup_content.js creates a new process each time, so the fact that it runs multiple times shouldn't affect the result in that way. I think what this is showing is just that these modules are, in fact, intermittently loaded. There's a section for intermittently loaded modules in browser_startup_content. Should we move these modules there to investigate, and re-enable the test on test-verify so that it can catch more intermittent loads?
Flags: needinfo?(kmaglione+bmo)
Assignee | ||
Comment 7•6 years ago
|
||
(In reply to :Felipe Gomes (needinfo me!) from comment #6) > Come to think of it, browser_startup_content.js creates a new process each > time, so the fact that it runs multiple times shouldn't affect the result in > that way. If that's the case, then this is probably due to chaos mode forcing the check to run later than usual. But I'm not entirely convinced it is the case. It doesn't look like the forceNewProcess hack will actually always force us to use a new process unless the pre-allocated process manager is disabled.
Flags: needinfo?(kmaglione+bmo)
Assignee | ||
Comment 8•6 years ago
|
||
Yup. Confirmed. The preallocated process manager causes the content process to be re-used.
Comment hidden (Intermittent Failures Robot) |
Comment 10•6 years ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/96e45af1d9de
Status: NEW → RESOLVED
Closed: 6 years ago
status-firefox63:
--- → fixed
Resolution: --- → FIXED
Target Milestone: --- → Firefox 63
Comment hidden (Intermittent Failures Robot) |
Comment 12•6 years ago
|
||
(In reply to Kris Maglione [:kmag] from comment #8) > Yup. Confirmed. The preallocated process manager causes the content process > to be re-used. I filed bug 1486568 to track that. In the meantime, what do you think about adding the modules originally reported here (BrowserChild.jsm, UnselectedTabHoverChild.jsm and WebNavigationChild.jsm) to the optionally-loaded list [1], and re-enable this test on test-verify? I was looking into the failures reported in comment 11 and turns out they aren't actually about these modules, they are for LinkHandlerChild.jsm, so it seems likely that bug 1480319 introduced a new real intermittent issue that is being reported to this bug, and since test-verify is not running this test, it wasn't caught earlier.
Flags: needinfo?(kmaglione+bmo)
Assignee | ||
Comment 13•6 years ago
|
||
I think that's a bad idea. The only time any of those modules should ever be loaded in time for those checks is if we reuse a process. Making them optionally-loaded would allow people to introduce regressions which load them earlier. The same goes for LinkHandlerChild. That should only ever be loaded when a <link> element is inserted, or when we finish parsing a <head> element. Again, those should only ever happen early enough for these checks if we reuse a process, so we don't want to add it to the optional list either. Given that I don't think TV adds any value, that seems like a pretty bad trade-off.
Flags: needinfo?(kmaglione+bmo)
Comment 14•6 years ago
|
||
(In reply to Kris Maglione [:kmag] from comment #13) > Given that I don't think TV adds any value, that seems like a pretty bad > trade-off. TV helps to catch intermittent failures quickly, and given that startup (both of the parent process and of content processes) tends to not happen in a deterministic order, intermittent failures are pretty likely (and we do actually have intermittent failures, as shown by comment 11). So I think TV has a lot of value in this case.
Comment 15•6 years ago
|
||
(In reply to Kris Maglione [:kmag] from comment #13) > I think that's a bad idea. The only time any of those modules should ever be > loaded in time for those checks is if we reuse a process. Making them > optionally-loaded would allow people to introduce regressions which load > them earlier. > > The same goes for LinkHandlerChild. That should only ever be loaded when a > <link> element is inserted, or when we finish parsing a <head> element. > Again, those should only ever happen early enough for these checks if we > reuse a process, so we don't want to add it to the optional list either. > > Given that I don't think TV adds any value, that seems like a pretty bad > trade-off. Ok, I agree that adding those modules to the accepted intermittent list is not a good idea, so I won't go in that direction. However, I believe TV is very useful to help avoid some real intermittent failures. I submitted a patch to bug 1486568 and I verified that, with the patch, this test works properly on test-verify. In that case, are you fine with re-enabling it on TV once bug 1486568 lands?
Flags: needinfo?(kmaglione+bmo)
Assignee | ||
Comment 16•6 years ago
|
||
(In reply to :Felipe Gomes (needinfo me!) from comment #15) > I submitted a patch to bug 1486568 and I verified that, with the patch, this > test works properly on test-verify. In that case, are you fine with > re-enabling it on TV once bug 1486568 lands? Yup.
Flags: needinfo?(kmaglione+bmo)
You need to log in
before you can comment on or make changes to this bug.
Description
•