Bug 887889 - Relax Sqlite.jsm restrictions in browser_startup.js r?florian draft
authorDoug Thayer <dothayer@mozilla.com>
Mon, 26 Mar 2018 10:08:30 -0700
changeset 788704 0e590e6c27016ed02848a46a8494aa7f28e73407
parent 788703 0ecc1626fd6593f6d4d6945434ce3862e1d19527
child 788705 825867eb7878a6838ecc1d05bc3522407a631da0
push id108067
push userbmo:dothayer@mozilla.com
push dateThu, 26 Apr 2018 21:12:12 +0000
reviewersflorian
bugs887889
milestone61.0a1
Bug 887889 - Relax Sqlite.jsm restrictions in browser_startup.js r?florian We've improved the startup IO situation in bug 887889 by not synchronously initializing a connection to the contentprefs db. However, this means we are loading Sqlite.jsm earlier than we were, which isn't ideal and can be avoided. However, this isn't completely trivial so I'd like to move this work to a follow-up. MozReview-Commit-ID: 6Em0rN26Qj3
browser/base/content/test/performance/browser_startup.js
--- a/browser/base/content/test/performance/browser_startup.js
+++ b/browser/base/content/test/performance/browser_startup.js
@@ -69,16 +69,19 @@ const startupPhases = {
       "resource:///modules/BrowserUsageTelemetry.jsm",
       "resource:///modules/ContentCrashHandlers.jsm",
       "resource:///modules/ShellService.jsm",
       "resource://gre/modules/NewTabUtils.jsm",
       "resource://gre/modules/PageThumbs.jsm",
       "resource://gre/modules/PlacesUtils.jsm",
       "resource://gre/modules/Promise.jsm", // imported by devtools during _delayedStartup
       "resource://gre/modules/Preferences.jsm",
+      // Bug 1448944 - This should be in a stricter bucket, but we
+      // load it to check content prefs on the initial about:blank
+      "resource://gre/modules/Sqlite.jsm",
     ]),
     services: new Set([
       "@mozilla.org/browser/search-service;1",
     ])
   }},
 
   // We are at this phase once we are ready to handle user events.
   // Anything loaded at this phase or before gets in the way of the user
@@ -95,17 +98,16 @@ const startupPhases = {
       "resource://gre/modules/BookmarkHTMLUtils.jsm",
       "resource://gre/modules/Bookmarks.jsm",
       "resource://gre/modules/ContextualIdentityService.jsm",
       "resource://gre/modules/CrashSubmit.jsm",
       "resource://gre/modules/FxAccounts.jsm",
       "resource://gre/modules/FxAccountsStorage.jsm",
       "resource://gre/modules/PlacesBackups.jsm",
       "resource://gre/modules/PlacesSyncUtils.jsm",
-      "resource://gre/modules/Sqlite.jsm",
     ]),
     services: new Set([
       "@mozilla.org/browser/annotation-service;1",
       "@mozilla.org/browser/nav-bookmarks-service;1",
     ])
   }},
 
   // Things that are expected to be completely out of the startup path