Closed
Bug 1458856
Opened 7 years ago
Closed 7 years ago
Rollout on new non-existent preference throws Component Failure
Categories
(Firefox :: Normandy Client, defect, P1)
Firefox
Normandy Client
Tracking
()
VERIFIED
FIXED
Firefox 61
Tracking | Status | |
---|---|---|
firefox-esr52 | --- | unaffected |
firefox-esr60 | --- | unaffected |
firefox59 | --- | unaffected |
firefox60 | --- | unaffected |
firefox61 | + | verified |
firefox62 | --- | verified |
People
(Reporter: aflorinescu, Assigned: mythmon)
References
Details
Attachments
(1 file)
[Description:]
The following reproduces only on a FF client when using a new non-existent preference added manually from about:config.
[Prerequisites:]
You need access to New Admin interface (https://normandy-admin.stage.mozaws.net/control-new)
1. Set the app.normandy.dev_mode preference to true to run recipes immediately on startup.
2. Set the app.normandy.logging.level preference to 0 to enable more logging.
3. Set the security.content.signature.root_hash preference to 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.
4. Set the preference value for app.normandy.api_url set to https://normandy.stage.mozaws.net/api/v1
[Steps:]
1. Open Firefox client with a new profile.
2. Open about:config in a new tab and right click and add a new preferences: e.g. non_existent_preference, int, with value 10.
3. Open Admin center and create a new rollout type recipe, targeting the step2 preference, changing the value to something else, e.g. 12.
4. Publish step 3 recipe.
5. On the profile from step 1, set prerequisites and restart.
6. Open browser console and check the results.
[Actual Result:]
1525337683826 app.normandy.recipe-runner INFO Executing recipe "pref-r-2" (action=preference-rollout)
[Exception... "Component returned failure code: 0x8000ffff (NS_ERROR_UNEXPECTED) [nsIPrefBranch.getIntPref]" nsresult: "0x8000ffff (NS_ERROR_UNEXPECTED)" location: "JS frame :: resource://normandy/lib/PrefUtils.jsm :: getPref :: line 34" data: no]
getPref resource://normandy/lib/PrefUtils.jsm:34:16 _run/newRollout.preferences< resource://normandy/actions/PreferenceRolloutAction.jsm:41:24 map self-hosted:292:17 _run resource://normandy/actions/PreferenceRolloutAction.jsm:38:20 InterpretGeneratorResume self-hosted:1264:8
[Expected Result:]
The preference rollout should be executed successfully with no browser console error.
Updated•7 years ago
|
tracking-firefox61:
--- → +
Comment hidden (mozreview-request) |
Comment 2•7 years ago
|
||
mozreview-review |
Comment on attachment 8973029 [details]
Bug 1458856 - Handle prefs with only a user value in preference rollout
https://reviewboard.mozilla.org/r/241560/#review247390
Code analysis found 1 defect in this patch:
- 1 defect found by mozlint
You can run this analysis locally with:
- `./mach lint path/to/file` (JS/Python)
If you see a problem in this automated review, please report it here: http://bit.ly/2y9N9Vx
::: toolkit/components/normandy/lib/PrefUtils.jsm:46
(Diff revision 1)
> }
> + } catch (e) {
> + if (branchName === "default" && e.result === Cr.NS_ERROR_UNEXPECTED) {
> + // There is a value for the pref on the user branch but not on the default branch. This is ok.
> + return defaultValue;
> + } else {
Error: Unnecessary 'else' after 'return'. [eslint: no-else-return]
Comment hidden (mozreview-request) |
Assignee | ||
Updated•7 years ago
|
Assignee: nobody → mcooper
Status: NEW → ASSIGNED
Priority: -- → P1
Comment 4•7 years ago
|
||
mozreview-review |
Comment on attachment 8973029 [details]
Bug 1458856 - Handle prefs with only a user value in preference rollout
https://reviewboard.mozilla.org/r/241560/#review247516
Attachment #8973029 -
Flags: review?(gijskruitbosch+bugs) → review+
Pushed by mcooper@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/b28e041ff83c
Handle prefs with only a user value in preference rollout r=Gijs
Comment 6•7 years ago
|
||
bugherder |
Status: ASSIGNED → RESOLVED
Closed: 7 years ago
Resolution: --- → FIXED
Target Milestone: --- → Firefox 61
Updated•7 years ago
|
Flags: qe-verify+
Comment 7•7 years ago
|
||
Verified as fixed on the following builds:
Beta 61.0b6(20180517141400) and Nightly 62.0a1(20180520220103).
No error is displayed in browser console when a rollout is performed on a new non-existent preference.
You need to log in
before you can comment on or make changes to this bug.
Description
•