Bug 1381907 - Roll out to 1% of users on 54 Release. r=Felipe
authorBlake Kaplan <mrbkap@gmail.com>
Tue, 18 Jul 2017 14:47:58 -0700
changeset 418618 93ec40b8343387f980bb78db2be869e6c89849e1
parent 418617 2d7bd105fcc90278d2f4699d97aa1a979c987cd5
child 418619 e0ee89ef9aa9067dd89c6447a7ac172c6e435244
push id7566
push usermtabara@mozilla.com
push dateWed, 02 Aug 2017 08:25:16 +0000
treeherdermozilla-beta@86913f512c3c [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersFelipe
bugs1381907
milestone56.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 1381907 - Roll out to 1% of users on 54 Release. r=Felipe MozReview-Commit-ID: 1WwDAJo1FEs
browser/extensions/e10srollout/bootstrap.js
browser/extensions/e10srollout/install.rdf.in
--- a/browser/extensions/e10srollout/bootstrap.js
+++ b/browser/extensions/e10srollout/bootstrap.js
@@ -19,27 +19,29 @@ const TEST_THRESHOLD = {
   "esr": 1.0,  // 100%
 };
 
 // If a user qualifies for the e10s-multi experiement, this is how many
 // content processes to use and whether to allow addons for the experiment.
 const MULTI_EXPERIMENT = {
   "beta": { buckets: { 1: .5, 4: 1, }, // 1 process: 50%, 4 processes: 50%
 
-            // See below for an explanation, this only allows webextensions.
-            get addonsDisableExperiment() { return getAddonsDisqualifyForMulti(); } },
-
-  "release": { buckets: { 1: .2, 4: 1 }, // 1 process: 20%, 4 processes: 80%
+            // When on the "beta" channel, getAddonsDisqualifyForMulti
+            // will return true if any addon installed is not a web extension.
+            // Therefore, this returns true if and only if all addons
+            // installed are web extensions or if no addons are installed
+            // at all.
+            addonsDisableExperiment(prefix) { return getAddonsDisqualifyForMulti(); } },
 
-               // When on the "release" channel, getAddonsDisqualifyForMulti
-               // will return true if any addon installed is not a web extension.
-               // Therefore, this returns true if and only if all addons
-               // installed are web extensions or if no addons are installed
-               // at all.
-               get addonsDisableExperiment() { return getAddonsDisqualifyForMulti(); } }
+  "release": { buckets: { 1: .99, 4: 1 }, // 1 process: 99%, 4 processes: 1%
+
+               // We don't want to allow users with any extension
+               // (webextension or otherwise in the experiment). prefix will
+               // be non-empty if there is any addon.
+               addonsDisableExperiment(prefix) { return !!prefix; } }
 };
 
 const ADDON_ROLLOUT_POLICY = {
   "beta": "50allmpc",
   "release": "50allmpc",
   "esr": "esrA", // WebExtensions and Addons with mpc=true
 };
 
@@ -178,17 +180,17 @@ function defineCohort() {
   //   (i.e. there's at least one addon installed) we stop here.
   // - We decided above whether this user qualifies for the experiment.
   // - If the user already opted into multi, then their prefs are already set
   //   correctly, we're done.
   // - If the user has addons that disqualify them for multi, leave them with
   //   the default number of content processes (1 on beta) but still in the
   //   test cohort.
   if (!(updateChannel in MULTI_EXPERIMENT) ||
-      MULTI_EXPERIMENT[updateChannel].addonsDisableExperiment ||
+      MULTI_EXPERIMENT[updateChannel].addonsDisableExperiment(cohortPrefix) ||
       !eligibleForMulti ||
       userOptedIn.multi ||
       disqualified) {
     Preferences.reset(PREF_E10S_PROCESSCOUNT + ".web");
     return;
   }
 
   // If we got here with a cohortPrefix, it must be "addons-set50allmpc-",
--- a/browser/extensions/e10srollout/install.rdf.in
+++ b/browser/extensions/e10srollout/install.rdf.in
@@ -5,17 +5,17 @@
 
 #filter substitution
 
 <RDF xmlns="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
      xmlns:em="http://www.mozilla.org/2004/em-rdf#">
 
   <Description about="urn:mozilla:install-manifest">
     <em:id>e10srollout@mozilla.org</em:id>
-    <em:version>1.80</em:version>
+    <em:version>1.85</em:version>
     <em:type>2</em:type>
     <em:bootstrap>true</em:bootstrap>
     <em:multiprocessCompatible>true</em:multiprocessCompatible>
 
     <!-- Target Application this theme can install into,
         with minimum and maximum supported versions. -->
     <em:targetApplication>
       <Description>