Closed Bug 1455735 Opened 6 years ago Closed 6 years ago

Normandy can't enroll in addon studies due to Indexeddb problems

Categories

(Firefox :: Normandy Client, defect, P1)

defect

Tracking

()

VERIFIED FIXED
Firefox 61
Tracking Status
firefox60 --- unaffected
firefox61 blocking verified

People

(Reporter: mythmon, Assigned: mythmon)

References

Details

Attachments

(1 file)

Chutten found this while working on bug 1450690. Here's a traceback of the error preventing enrollment:

InvalidStateError: A mutation operation was attempted on a database that did not allow mutations. JS Stack trace: transaction@IndexedDB.jsm:289:39
objectStore@IndexedDB.jsm:317:23
getStore@AddonStudies.jsm:87:10
start@AddonStudies.jsm:273:13
Async*wrapAsync/</<@SandboxManager.jsm:108:9
wrapAsync/<@SandboxManager.jsm:103:14
execute@SandboxManager.jsm:57:2272
async*registerAction/<@SandboxManager.jsm:61:18
@SandboxManager.jsm:58:53
evalInSandbox@SandboxManager.jsm:57:12
runAsyncCallback@ActionSandboxManager.jsm:74:26
async*runRecipe@ActionsManager.jsm:97:17
async*run@RecipeRunner.jsm:240:9
async*init@RecipeRunner.jsm:80:13
async*finishInit@Normandy.jsm:97:11
async*observe@Normandy.jsm:53:7
ssi_sendRestoreCompletedNotifications@SessionStore.jsm:4584:7
ssi_restoreWindow@SessionStore.jsm:3523:5
ssi_restoreWindows@SessionStore.jsm:3629:5
initializeWindow@SessionStore.jsm:1177:11
onBeforeBrowserWindowShown/<@SessionStore.jsm:1328:9
promise callback*onBeforeBrowserWindowShown@SessionStore.jsm:1313:5
ssi_observe@SessionStore.jsm:764:9
onLoad@browser.js:1337:5
onload@browser.xul:1:1
In my testing,. Fx60 is not affected by this.
Chutten: I'm having trouble reproducing this on a fresh profile with a build from mozilla-central (cset 5d73549d363f, if it matters). I'm using the STR from bug 1450690, and everything seems to be working fine.

An easier way to exercise the code path in question is something like this in the console:

ChromeUtils.import("resource://normandy/lib/AddonStudies");
AddonStudies.start({recipeId: 1, name: "test", description: "test test", addonUrl: "https://net-mozaws-prod-us-west-2-normandy.s3.amazonaws.com/extensions/taarexpv2@shield.mozilla.org-1.0.13-signed.xpi"})

Can you get some situation where you can reproduce the error? Either with the stage server, or with the snippet above? I'm starting to wonder if this is an intermittent bug, or if there is something else going on that we haven't noticed.
Using the default settings in a prefs.js as follows with a new profile:

user_pref("security.content.signature.root_hash", "DB:74:CE:58:E4:F9:D0:9E:E0:42:36:BE:6C:C5:C4:F6:6A:E7:74:7D:C0:21:42:7A:03:BC:2F:57:0C:8B:9B:90");
user_pref("extensions.shield-recipe-client.api_url", "https://normandy.stage.mozaws.net/api/v1");
user_pref("app.normandy.dev_mode", true);
user_pref("app.normandy.logging.level", 0);

I'm getting 8 addons installed currently from staging, nothing in about:studies, no enrollment in about:telemetry.

Also browser console logs:

1524573762197	app.normandy.normandy-driver.actions	DEBUG	Starting study for recipe 329
1524573762200	app.normandy.normandy-driver.actions	DEBUG	Starting study for recipe 309
1524573762201	app.normandy.normandy-driver.actions	DEBUG	Starting study for recipe 308
1524573762202	app.normandy.normandy-driver.actions	DEBUG	Starting study for recipe 304
1524573762203	app.normandy.normandy-driver.actions	DEBUG	Starting study for recipe 302
1524573762204	app.normandy.normandy-driver.actions	DEBUG	Starting study for recipe 298
1524573762205	app.normandy.normandy-driver.actions	DEBUG	Starting study for recipe 269
1524573762205	app.normandy.normandy-driver.actions	DEBUG	Starting study for recipe 268
My reduced test case in 2 bypassed the actual problem. I was able to reproduce the problem today, and the attached patch fixes the problem for me. The problem I fixed here was a regression caused by the changes in bug 1436113.
Comment on attachment 8970677 [details]
Bug 1455735 - Await running recipes

https://reviewboard.mozilla.org/r/239412/#review245280

Gah, sorry for not catching this in review. :-(
Attachment #8970677 - Flags: review?(gijskruitbosch+bugs) → review+
I mispoke in comment 5. The regressing bug is *not* bug 1436113. The regressing bug is bug 1440777.
https://hg.mozilla.org/mozilla-central/rev/801fa27ae7b8
Status: ASSIGNED → RESOLVED
Closed: 6 years ago
Resolution: --- → FIXED
Target Milestone: --- → Firefox 61
Flags: qe-verify+
You need to log in before you can comment on or make changes to this bug.