Open Bug 1447254 Opened 7 years ago Updated 2 years ago

Handle Component failure when recipe preference type doesn't match the FF preference type

Categories

(Firefox :: Normandy Client, defect, P3)

defect

Tracking

()

Tracking Status
firefox59 --- affected
firefox60 --- affected
firefox61 --- affected

People

(Reporter: aflorinescu, Unassigned)

References

(Blocks 1 open bug)

Details

[Affected platforms]: All platforms: Ubuntu 16.04 x64, Windows 7 x64, Mac OS X 10.12 [Affected versions]: 59.0b11 20180219114835 (Shield Recipe Client 80) 60.0b4 20180315232954 61.0a1 20180316100132 [Prerequisites]: You need access to New Admin interface (https://normandy-admin.stage.mozaws.net/) 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 Control center (https://normandy-admin.stage.mozaws.net/) 2. Create a pref-experiment type recipe. 3. Choose a boolean type preference. 4. For preference name use a preference that's integer type (e.g. accessibility.tabfocus) 5. Save, Approve, Publish recipe. 6. Start Firefox with pre-requisites set and open Browser Console. [Actual Result:] The browser console states: 1521538791604 app.normandy.recipe-runner INFO Executing recipe "Adi Pref. experiment - Composite" (action=preference-experiment) 1521538791606 app.normandy.preference-experiments DEBUG PreferenceExperiments.has(hiigi) 1521538791606 app.normandy.preference-experiments DEBUG PreferenceExperiments.getAllActive() 1521538791608 app.normandy.preference-experiments DEBUG PreferenceExperiments.start(hiigi, z) 1521538791608 app.normandy.recipe-runner ERROR Could not execute recipe Adi Pref. experiment - Composite: Log.jsm:797 Component returned failure code: 0x8000ffff (NS_ERROR_UNEXPECTED) [nsIPrefBranch.getBoolPref] undefined:119 [Expected Result:] The type miss match error is handled. [Note:] Not a regression introduced by bug 1436113.
The fix I expect here is to gracefully catch the error, and report a failed recipe execution to Uptake and Event telemetry. It is correct that the recipe does not apply, since it is invalid. But it shouldn't throw errors.
Severity: normal → minor
Priority: -- → P3
Severity: minor → S4
You need to log in before you can comment on or make changes to this bug.