Closed Bug 1607476 Opened 5 years ago Closed 5 years ago

Perma | toolkit/modules/tests/xpcshell/test_firstStartup.js | xpcshell return code: 0 when Gecko version increases to 75 on 2020-02-10

Categories

(Toolkit :: General, defect, P1)

defect

Tracking

()

VERIFIED FIXED
mozilla74
Tracking Status
firefox-esr68 --- unaffected
firefox72 --- unaffected
firefox73 --- unaffected
firefox74 + verified

People

(Reporter: stefan_hindli, Assigned: rhelmer)

References

Details

(Keywords: regression)

Attachments

(2 files)

[Tracking Requested - why for this release]:

Central as Version Increase simulation: https://treeherder.mozilla.org/#/jobs?repo=try&selectedJob=283826891&resultStatus=testfailed%2Cbusted%2Cexception%2Cretry%2Cusercancel%2Crunnable&revision=91a10ab055d0141772ad67db49d218c853ab1a33

Failure log: https://treeherder.mozilla.org/logviewer.html#/jobs?job_id=283826891&repo=try&lineNumber=2699

[task 2020-01-07T13:24:10.807Z] 13:24:10 INFO - TEST-START | uriloader/exthandler/tests/unit/test_punycodeURIs.js
[task 2020-01-07T13:24:12.196Z] 13:24:12 INFO - TEST-PASS | uriloader/exthandler/tests/unit/test_punycodeURIs.js | took 1391ms
[task 2020-01-07T13:24:12.199Z] 13:24:12 INFO - Retrying tests that failed when run in parallel.
[task 2020-01-07T13:24:12.208Z] 13:24:12 INFO - TEST-START | xpcshell.ini:toolkit/components/search/tests/xpcshell/test_maybereloadengine_update.js
[task 2020-01-07T13:24:14.713Z] 13:24:14 INFO - TEST-PASS | xpcshell.ini:toolkit/components/search/tests/xpcshell/test_maybereloadengine_update.js | took 2506ms
[task 2020-01-07T13:24:14.728Z] 13:24:14 INFO - TEST-START | xpcshell-legacyconfig.ini:toolkit/components/search/tests/xpcshell/test_searchSuggest.js
[task 2020-01-07T13:24:32.188Z] 13:24:32 INFO - TEST-PASS | xpcshell-legacyconfig.ini:toolkit/components/search/tests/xpcshell/test_searchSuggest.js | took 17465ms
[task 2020-01-07T13:24:32.203Z] 13:24:32 INFO - TEST-START | xpcshell.ini:toolkit/components/search/tests/xpcshell/test_maybereloadengine_update_distro.js
[task 2020-01-07T13:24:34.827Z] 13:24:34 INFO - TEST-PASS | xpcshell.ini:toolkit/components/search/tests/xpcshell/test_maybereloadengine_update_distro.js | took 2628ms
[task 2020-01-07T13:24:34.834Z] 13:24:34 INFO - TEST-START | xpcshell.ini:toolkit/components/search/tests/xpcshell/test_searchSuggest.js
[task 2020-01-07T13:24:52.276Z] 13:24:52 INFO - TEST-PASS | xpcshell.ini:toolkit/components/search/tests/xpcshell/test_searchSuggest.js | took 17441ms
[task 2020-01-07T13:24:52.292Z] 13:24:52 INFO - TEST-START | toolkit/components/url-classifier/tests/unit/test_listmanager.js
[task 2020-01-07T13:24:53.879Z] 13:24:53 INFO - TEST-PASS | toolkit/components/url-classifier/tests/unit/test_listmanager.js | took 1592ms
[task 2020-01-07T13:24:53.894Z] 13:24:53 INFO - TEST-START | toolkit/modules/tests/xpcshell/test_firstStartup.js
[task 2020-01-07T13:24:54.723Z] 13:24:54 WARNING - TEST-UNEXPECTED-FAIL | toolkit/modules/tests/xpcshell/test_firstStartup.js | xpcshell return code: 0
[task 2020-01-07T13:24:54.724Z] 13:24:54 INFO - TEST-INFO took 833ms
[task 2020-01-07T13:24:54.724Z] 13:24:54 INFO - >>>>>>>
[task 2020-01-07T13:24:54.724Z] 13:24:54 INFO - PID 18132 | [18132, Main Thread] WARNING: 'result.isErr()', file /builds/worker/workspace/build/src/startupcache/StartupCache.cpp, line 167
[task 2020-01-07T13:24:54.725Z] 13:24:54 INFO - PID 18132 | [18132, Main Thread] WARNING: 'result.isErr()', file /builds/worker/workspace/build/src/startupcache/StartupCache.cpp, line 167
[task 2020-01-07T13:24:54.725Z] 13:24:54 INFO - PID 18132 | [18132, Main Thread] WARNING: 'result.isErr()', file /builds/worker/workspace/build/src/startupcache/StartupCache.cpp, line 167
[task 2020-01-07T13:24:54.725Z] 13:24:54 INFO - PID 18132 | [18132, Main Thread] WARNING: 'result.isErr()', file /builds/worker/workspace/build/src/startupcache/StartupCache.cpp, line 167
[task 2020-01-07T13:24:54.726Z] 13:24:54 INFO - PID 18132 | [18132, Main Thread] WARNING: 'result.isErr()', file /builds/worker/workspace/build/src/startupcache/StartupCache.cpp, line 167
[task 2020-01-07T13:24:54.726Z] 13:24:54 INFO - PID 18132 | [18132, Main Thread] WARNING: 'result.isErr()', file /builds/worker/workspace/build/src/startupcache/StartupCache.cpp, line 167
[task 2020-01-07T13:24:54.726Z] 13:24:54 INFO - PID 18132 | [18132, Main Thread] WARNING: 'result.isErr()', file /builds/worker/workspace/build/src/startupcache/StartupCache.cpp, line 167
[task 2020-01-07T13:24:54.726Z] 13:24:54 INFO - PID 18132 | [18132, Main Thread] WARNING: 'result.isErr()', file /builds/worker/workspace/build/src/startupcache/StartupCache.cpp, line 167
[task 2020-01-07T13:24:54.727Z] 13:24:54 INFO - PID 18132 | [18132, Main Thread] WARNING: 'result.isErr()', file /builds/worker/workspace/build/src/startupcache/StartupCache.cpp, line 167
[task 2020-01-07T13:24:54.727Z] 13:24:54 INFO - PID 18132 | [18132, Main Thread] WARNING: 'result.isErr()', file /builds/worker/workspace/build/src/startupcache/StartupCache.cpp, line 167
[task 2020-01-07T13:24:54.727Z] 13:24:54 INFO - PID 18132 | [18132, Main Thread] WARNING: 'result.isErr()', file /builds/worker/workspace/build/src/startupcache/StartupCache.cpp, line 167
[task 2020-01-07T13:24:54.728Z] 13:24:54 INFO - PID 18132 | [18132, Main Thread] WARNING: 'result.isErr()', file /builds/worker/workspace/build/src/startupcache/StartupCache.cpp, line 167
[task 2020-01-07T13:24:54.729Z] 13:24:54 INFO - PID 18132 | [18132, Main Thread] WARNING: Couldn't get the user appdata directory. Crash events may not be produced.: file /builds/worker/workspace/build/src/toolkit/crashreporter/nsExceptionHandler.cpp, line 2626
[task 2020-01-07T13:24:54.729Z] 13:24:54 INFO - PID 18132 | [18132, Main Thread] WARNING: 'result.isErr()', file /builds/worker/workspace/build/src/startupcache/StartupCache.cpp, line 167
[task 2020-01-07T13:24:54.729Z] 13:24:54 INFO - PID 18132 | [18132, Main Thread] WARNING: 'result.isErr()', file /builds/worker/workspace/build/src/startupcache/StartupCache.cpp, line 167
[task 2020-01-07T13:24:54.730Z] 13:24:54 INFO - PID 18132 | [18132, Main Thread] WARNING: 'result.isErr()', file /builds/worker/workspace/build/src/startupcache/StartupCache.cpp, line 167
[task 2020-01-07T13:24:54.731Z] 13:24:54 INFO - PID 18132 | [18132, Main Thread] WARNING: NS_ENSURE_SUCCESS(rv, kKnownEsrVersion) failed with result 0x80004002: file /builds/worker/workspace/build/src/toolkit/components/resistfingerprinting/nsRFPService.cpp, line 658
[task 2020-01-07T13:24:54.731Z] 13:24:54 INFO - (xpcshell/head.js) | test MAIN run_test pending (1)
[task 2020-01-07T13:24:54.731Z] 13:24:54 INFO - (xpcshell/head.js) | test run_next_test 0 pending (2)
[task 2020-01-07T13:24:54.732Z] 13:24:54 INFO - (xpcshell/head.js) | test MAIN run_test finished (2)
[task 2020-01-07T13:24:54.732Z] 13:24:54 INFO - running event loop
[task 2020-01-07T13:24:54.733Z] 13:24:54 INFO - toolkit/modules/tests/xpcshell/test_firstStartup.js | Starting test_success
[task 2020-01-07T13:24:54.733Z] 13:24:54 INFO - (xpcshell/head.js) | test test_success pending (2)
[task 2020-01-07T13:24:54.734Z] 13:24:54 INFO - PID 18132 | JavaScript strict warning: resource://normandy/lib/RecipeRunner.jsm, line 120: ReferenceError: reference to undefined property "appBuildID"
[task 2020-01-07T13:24:54.734Z] 13:24:54 INFO - "CONSOLE_MESSAGE: (warn) [JavaScript Warning: "ReferenceError: reference to undefined property "appBuildID"" {file: "resource://normandy/lib/RecipeRunner.jsm" line: 120}]"
[task 2020-01-07T13:24:54.736Z] 13:24:54 INFO - "CONSOLE_MESSAGE: (error) [JavaScript Error: "NetworkError when attempting to fetch resource." {file: "resource://gre/modules/FirstStartup.jsm" line: 59}]
[task 2020-01-07T13:24:54.736Z] 13:24:54 INFO - init@resource://gre/modules/FirstStartup.jsm:59:19
[task 2020-01-07T13:24:54.736Z] 13:24:54 INFO - test_success@/builds/worker/workspace/build/tests/xpcshell/tests/toolkit/modules/tests/xpcshell/test_firstStartup.js:14:16

Flags: needinfo?(rhelmer)
Summary: TEST-UNEXPECTED-FAIL | toolkit/modules/tests/xpcshell/test_firstStartup.js | xpcshell return code: 0 when Gecko version increases to 75 on 2020-02-10 → Perma | toolkit/modules/tests/xpcshell/test_firstStartup.js | xpcshell return code: 0 when Gecko version increases to 75 on 2020-02-10

Doug, I noticed the StartupCache.cpp warnings in the log for this FirstStartup test that is going to fail after merge (see comment 0), does any of this make sense to you?

I'll spend some time digging into it today too.

Flags: needinfo?(rhelmer) → needinfo?(dothayer)

That's rather curious... do we somehow have multiple instances of the startup cache? That warning is from the destructor of the startup cache which should be a singleton. Am I missing something obvious here?

(In reply to Doug Thayer [:dthayer] from comment #4)

That's rather curious... do we somehow have multiple instances of the startup cache? That warning is from the destructor of the startup cache which should be a singleton. Am I missing something obvious here?

Thanks! Maybe it's a side-effect of how the tests are being run... I'll take a look over previous logs and see if these warnings are something that happens in the non-failure case too.

Oh, I had missed this on the first read-through:

task 2020-01-07T13:24:54.734Z] 13:24:54 INFO - PID 18132 | JavaScript strict warning: resource://normandy/lib/RecipeRunner.jsm, line 120: ReferenceError: reference to undefined property "appBuildID"

mythmon, any idea why that might be happening during FirstStartup tests ^?

Flags: needinfo?(dothayer) → needinfo?(mcooper)

Normandy checks Services.appinfo.appBuildID to see if Firefox has upgraded and it needs to run again immediately. This change was introduced recently in bug 1472097.

I'm not sure why appBuildID would be undefined. That warning would have the effect of something like Services.prefs.setCharPref("...", undefined), which is probably not good. I have no idea why this would be triggered by a version bump to 75 though. We could try and add some safety around that block of code with something like this patch, but I'd like to figure out why it is doing that:

diff --git a/toolkit/components/normandy/lib/RecipeRunner.jsm b/toolkit/components/normandy/lib/RecipeRunner.jsm
--- a/toolkit/components/normandy/lib/RecipeRunner.jsm
+++ b/toolkit/components/normandy/lib/RecipeRunner.jsm
@@ -110,15 +110,18 @@ var RecipeRunner = {
     // If we've seen a build ID from a previous run that doesn't match the
     // current build ID, run immediately. This is probably an upgrade or
     // downgrade, which may cause recipe eligibility to change.
-    let lastSeenBuildID = Services.prefs.getCharPref(LAST_BUILDID_PREF, "");
-    let hasNewBuildID =
-      lastSeenBuildID && Services.appinfo.appBuildID != lastSeenBuildID;
+    let hasNewBuildID = false;
+    if (Services.appinfo.appBuildID) {
+      let lastSeenBuildID = Services.prefs.getCharPref(LAST_BUILDID_PREF, "");
+      hasNewBuildID =
+        lastSeenBuildID && Services.appinfo.appBuildID != lastSeenBuildID;
 
-    if (hasNewBuildID || !lastSeenBuildID) {
-      Services.prefs.setCharPref(
-        LAST_BUILDID_PREF,
-        Services.appinfo.appBuildID
-      );
+      if (hasNewBuildID || !lastSeenBuildID) {
+        Services.prefs.setCharPref(
+          LAST_BUILDID_PREF,
+          Services.appinfo.appBuildID
+        );
+      }
     }
Flags: needinfo?(mcooper)

Bugbug thinks this bug is a regression, but please revert this change in case of error.

Keywords: regression

Are you taking on this bug? Or, can you help find an owner for it? Thanks!

Flags: needinfo?(mcooper)

(In reply to Liz Henry (:lizzard) from comment #10)

Are you taking on this bug? Or, can you help find an owner for it? Thanks!

I'll take a look.

Assignee: nobody → rhelmer
Status: NEW → ASSIGNED
Flags: needinfo?(mcooper)

Could you please tell me how to reproduce this? I tried taking the patch from https://hg.mozilla.org/try/rev/91a10ab055d0141772ad67db49d218c853ab1a33 on a current m-c but I don't see it locally or on full try builds. What am I missing?

Flags: needinfo?(shindli)

(In reply to Robert Helmer [:rhelmer] from comment #12)

Could you please tell me how to reproduce this? I tried taking the patch from https://hg.mozilla.org/try/rev/91a10ab055d0141772ad67db49d218c853ab1a33 on a current m-c but I don't see it locally or on full try builds. What am I missing?

Oops never mind, I see it on try now.

Flags: needinfo?(shindli)

Hm. So the actual failure is:

[task 2020-01-16T22:43:19.351Z] 22:43:19 INFO - Unexpected exception TypeError: right-hand side of 'in' should be an object, got undefined at /builds/worker/workspace/build/tests/xpcshell/tests/toolkit/modules/tests/xpcshell/test_firstStartup.js:23

Still not seeing it locally though, will poke some telemetry folk.

Ugh OK the problem here is just that the telemetry probes expired :/ I'll put a patch up today.

The priority flag is not set for this bug.
:Dolske, could you have a look please?

For more information, please visit auto_nag documentation.

Flags: needinfo?(dolske)
Flags: needinfo?(dolske) → needinfo?(rhelmer)
Priority: -- → P1
Attachment #9122588 - Flags: data-review?(chutten)
Comment on attachment 9122588 [details] Data Collection Renewal for Bug 1607476 Is the provided Data Collection Review complete, correct, and data-review+ by a Data Steward? Yes. Is the data collection covered by the existing Firefox Privacy Notice? Yes. --- Result: datareview+
Attachment #9122588 - Flags: data-review?(chutten) → data-review+
Pushed by rhelmer@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/9610ac8f69e4 update expiration for FirstStartup scalars r=chutten
Status: ASSIGNED → RESOLVED
Closed: 5 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla74
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: