Kick off preloading about:newtab at a better time
Categories
(Firefox :: New Tab Page, enhancement, P2)
Tracking
()
People
(Reporter: mconley, Assigned: Gijs)
References
(Depends on 1 open bug, Blocks 3 open bugs)
Details
(Keywords: memory-footprint, perf, Whiteboard: [fxperf:p1])
Attachments
(5 files, 7 obsolete files)
Reporter | ||
Updated•8 years ago
|
Updated•8 years ago
|
Comment 1•8 years ago
|
||
Reporter | ||
Comment 2•8 years ago
|
||
Comment 3•8 years ago
|
||
Reporter | ||
Comment 4•8 years ago
|
||
Updated•8 years ago
|
Comment 5•8 years ago
|
||
Reporter | ||
Updated•8 years ago
|
Updated•8 years ago
|
Updated•7 years ago
|
Comment 7•7 years ago
|
||
Updated•7 years ago
|
Comment 8•7 years ago
|
||
Reporter | ||
Comment 9•7 years ago
|
||
Reporter | ||
Comment 10•7 years ago
|
||
Reporter | ||
Comment 11•7 years ago
|
||
Reporter | ||
Comment 12•7 years ago
|
||
Comment hidden (mozreview-request) |
Comment hidden (mozreview-request) |
Reporter | ||
Comment 15•7 years ago
|
||
Reporter | ||
Comment 16•7 years ago
|
||
Updated•7 years ago
|
Updated•7 years ago
|
Comment hidden (mozreview-request) |
Reporter | ||
Updated•7 years ago
|
Reporter | ||
Updated•7 years ago
|
Updated•7 years ago
|
Comment 18•7 years ago
|
||
mozreview-review |
Comment hidden (mozreview-request) |
Reporter | ||
Comment 20•7 years ago
|
||
mozreview-review-reply |
Comment 21•7 years ago
|
||
Comment 22•7 years ago
|
||
Comment 23•7 years ago
|
||
Comment 24•7 years ago
|
||
Updated•7 years ago
|
Reporter | ||
Comment 25•7 years ago
|
||
Reporter | ||
Comment 26•7 years ago
|
||
Updated•7 years ago
|
Comment hidden (mozreview-request) |
Comment hidden (mozreview-request) |
Comment hidden (mozreview-request) |
Comment hidden (mozreview-request) |
Updated•7 years ago
|
Updated•7 years ago
|
Updated•7 years ago
|
Updated•7 years ago
|
Reporter | ||
Updated•7 years ago
|
Reporter | ||
Updated•7 years ago
|
Reporter | ||
Comment 31•7 years ago
|
||
Comment hidden (mozreview-request) |
Comment hidden (mozreview-request) |
Reporter | ||
Updated•7 years ago
|
Reporter | ||
Updated•7 years ago
|
Reporter | ||
Updated•7 years ago
|
Reporter | ||
Updated•7 years ago
|
Updated•7 years ago
|
Comment 34•6 years ago
|
||
Updated•6 years ago
|
Reporter | ||
Updated•6 years ago
|
Assignee | ||
Comment 36•6 years ago
|
||
Stealing this.
Updated•6 years ago
|
Assignee | ||
Comment 37•6 years ago
|
||
Assignee | ||
Comment 38•6 years ago
|
||
This didn't use to work and was disabled in
https://bugzilla.mozilla.org/show_bug.cgi?id=1195981 . I expect my changes in
https://bugzilla.mozilla.org/show_bug.cgi?id=1427186 fixed the issue. It works
in my testing, anyway.
Depends on D21126
Assignee | ||
Comment 39•6 years ago
|
||
This limits us to 1 preloaded browser per window, in the top 3 normal windows + top 3 private windows.
If we try to create additional browsers beyond that, we instead move a pre-existing browser across.
Depends on D21127
Updated•6 years ago
|
Assignee | ||
Comment 40•6 years ago
|
||
My trypush is hitting orange in https://searchfox.org/mozilla-central/source/startupcache/test/browser_startupcache_telemetry.js , on Linux opt only. I expect what's happening is that the preload happens on the original window that opens for the test (it's the only browser test running in its dir, so the browser will have just opened before starting the test), and it (or some parts of it) happens after we invalidate the startup cache, causing us to add things to the startup cache which we then hit when we open the next window. I'll make the test wait for idle tasks in its own window to have finished, as they could all potentially be interfering here; hopefully that'll fix it.
https://treeherder.mozilla.org/#/jobs?repo=try&revision=61bb81f07e2cfea4b4773414ca23983c44a28dbb
Assignee | ||
Comment 41•6 years ago
|
||
(In reply to :Gijs (he/him) from comment #40)
My trypush is hitting orange in https://searchfox.org/mozilla-central/source/startupcache/test/browser_startupcache_telemetry.js , on Linux opt only. I expect what's happening is that the preload happens on the original window that opens for the test (it's the only browser test running in its dir, so the browser will have just opened before starting the test), and it (or some parts of it) happens after we invalidate the startup cache, causing us to add things to the startup cache which we then hit when we open the next window. I'll make the test wait for idle tasks in its own window to have finished, as they could all potentially be interfering here; hopefully that'll fix it.
https://treeherder.mozilla.org/#/jobs?repo=try&revision=61bb81f07e2cfea4b4773414ca23983c44a28dbb
As far as I can tell, this is caused by us loading RemoteController.js, cf. https://treeherder.mozilla.org/logviewer.html#/jobs?job_id=233020134&repo=try&lineNumber=7443 .
I can't reproduce locally. I think what's actually happening is that:
- we load a new window
- the new window loads a browser for its initial tab, which hits
construct()
from theconnectedCallback
of the custom element, hitting https://searchfox.org/mozilla-central/rev/2f1020dc4176d38dd5f3d0496f3c46849862ee0b/toolkit/content/widgets/browser-custom-element.js#1076-1080 . - we hit the idle task and create a preloaded browser, which hits this same codepath a second time. This time the remotecontroller.js file is memory cached, so we get a hit we don't expect
- the new window is focused and activated and whatnot, and the promise for openNewBrowserWindow() resolves, and we check telemetry.
I don't think this needs to block this bug landing, so what I'm going to do is:
- land with new tab preloading turned off in this test (after I get some sleep, anyway).
- file a follow-up bug for remotecontroller.js to be a jsm - there doesn't seem to be a good reason to use the subscript loader directly here and re-evaluate the global scope of that file every time we create a browser.
- file another follow-up depending on that to stop turning off new tab preloading in the test.
For (2) there, I guess I have to talk to Ehsan because I can't tell from the bug why we moved this to a plain JS file in bug 1395795.
Assignee | ||
Comment 42•6 years ago
|
||
There were some more issues with browser_statuspanel_twice.js, which I believe I've fixed (thanks to Doug for helping poke at logfiles). They seem to have been caused by changes in timings for the load in the window that opens, which cause state change events which then cause the "previoustype" and "type" attributes on the status panel to update, cancelling the transition at https://searchfox.org/mozilla-central/rev/8ff2cd0a27e3764d9540abdc5a66b2fb1e4e9644/browser/base/content/browser.css#1056-1058 .
However, we're now well into soft freeze, and this isn't technically a bugfix, so I'll land next week after soft freeze is over. I might still request uplift if there are no obvious/serious regressions.
Comment 43•6 years ago
|
||
Comment 44•6 years ago
|
||
Backed out 3 changesets (Bug 1353013) for a11y failures in accessible/tests/mochitest/relations/test_tabbrowser.xul CLOSED TREE
Log: https://treeherder.mozilla.org/logviewer.html#/jobs?job_id=234566980&repo=autoland&lineNumber=3127
Comment 45•6 years ago
|
||
Comment 46•6 years ago
|
||
Assignee | ||
Updated•6 years ago
|
Comment 47•6 years ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/d37ddb68b340
https://hg.mozilla.org/mozilla-central/rev/ef5f455b726f
https://hg.mozilla.org/mozilla-central/rev/26973fbde8f4
Assignee | ||
Updated•6 years ago
|
Description
•