Closed
Bug 766264
Opened 13 years ago
Closed 13 years ago
Permanent orange: TEST-UNEXPECTED-FAIL | test_0200_app_launch_apply_update.js | Exceeded MAX_TIMEOUT_RUNS whilst... also in test_0201_app_launch_apply_update.js and test_0203_app_launch_apply_update.js
Categories
(Toolkit :: Application Update, defect)
Toolkit
Application Update
Tracking
()
RESOLVED
FIXED
mozilla16
Tracking | Status | |
---|---|---|
firefox15 | --- | verified |
People
(Reporter: standard8, Assigned: standard8)
References
Details
(Keywords: intermittent-failure)
Attachments
(1 file)
9.13 KB,
patch
|
ehsan.akhgari
:
review+
akeybl
:
approval-mozilla-aurora+
|
Details | Diff | Splinter Review |
Since background updates (bug 307181) landed, we've been seeing permanent timeouts on the Thunderbird builders. Bug 757794 has converted these into failures. This bug is to track fixing those failures.
The failures only occur on Windows, here's some examples:
https://tbpl.mozilla.org/php/getParsedLog.php?id=12798852&tree=Thunderbird-Trunk#error3
TEST-UNEXPECTED-FAIL | c:\talos-slave\test\build\xpcshell\tests\toolkit\mozapps\update\test\unit\test_0200_app_launch_apply_update.js | test failed (with xpcshell return code: 0), see following log:
>>>>>>>
### XPCOM_MEM_LEAK_LOG defined -- logging leaks to c:\docume~1\cltbld\locals~1\temp\tmpzsbozw\runxpcshelltests_leaks.log
TEST-INFO | (xpcshell/head.js) | test 1 pending
TEST-INFO | (xpcshell/head.js) | test 2 pending
TEST-INFO | c:/talos-slave/test/build/xpcshell/tests/toolkit/mozapps/update/test/unit/test_0200_app_launch_apply_update.js | [run_test : 78] update test directory path: c:\talos-slave\test\build\thunderbird\update_test
TEST-INFO | c:/talos-slave/test/build/xpcshell/tests/toolkit/mozapps/update/test/unit/test_0200_app_launch_apply_update.js | [run_test : 117] launching C:\WINDOWS\System32\cmd.exe /D /Q /C c:\talos-slave\test\build\thunderbird\0200_aus_test_app.exe -no-remote -process-updates 1> c:\talos-slave\test\build\xpcshell\tests\toolkit\mozapps\update\test\unit\0200_app_console_log 2>&1
TEST-INFO | c:/talos-slave/test/build/xpcshell/tests/toolkit/mozapps/update/test/unit/head_update.js | [setEnvironment : 2788] setting the XRE_NO_WINDOWS_CRASH_DIALOG environment variable to 1... previously it didn't exist
TEST-INFO | c:/talos-slave/test/build/xpcshell/tests/toolkit/mozapps/update/test/unit/head_update.js | [setEnvironment : 2835] removing the XPCOM_MEM_LEAK_LOG environment variable... previous value c:\docume~1\cltbld\locals~1\temp\tmpzsbozw\runxpcshelltests_leaks.log
TEST-INFO | c:/talos-slave/test/build/xpcshell/tests/toolkit/mozapps/update/test/unit/head_update.js | [setEnvironment : 2842] setting the XPCOM_DEBUG_BREAK environment variable to warn... previous value stack-and-abort
TEST-INFO | c:/talos-slave/test/build/xpcshell/tests/toolkit/mozapps/update/test/unit/head_update.js | [setEnvironment : 2868] setting MOZ_NO_SERVICE_FALLBACK environment variable to 1
TEST-INFO | c:/talos-slave/test/build/xpcshell/tests/toolkit/mozapps/update/test/unit/head_update.js | [resetEnvironment : 2888] setting the XPCOM_MEM_LEAK_LOG environment variable back to c:\docume~1\cltbld\locals~1\temp\tmpzsbozw\runxpcshelltests_leaks.log
TEST-INFO | c:/talos-slave/test/build/xpcshell/tests/toolkit/mozapps/update/test/unit/head_update.js | [resetEnvironment : 2894] setting the XPCOM_DEBUG_BREAK environment variable back to stack-and-abort
TEST-INFO | c:/talos-slave/test/build/xpcshell/tests/toolkit/mozapps/update/test/unit/head_update.js | [resetEnvironment : 2928] removing the XRE_NO_WINDOWS_CRASH_DIALOG environment variable
TEST-INFO | c:/talos-slave/test/build/xpcshell/tests/toolkit/mozapps/update/test/unit/head_update.js | [resetEnvironment : 2950] removing MOZ_NO_SERVICE_FALLBACK environment variable
TEST-INFO | (xpcshell/head.js) | test 2 finished
TEST-INFO | (xpcshell/head.js) | running event loop
TEST-INFO | c:/talos-slave/test/build/xpcshell/tests/toolkit/mozapps/update/test/unit/test_0200_app_launch_apply_update.js | [PO_observe : 195] topic process-finished, process exitValue 0
TEST-UNEXPECTED-FAIL | c:/talos-slave/test/build/xpcshell/tests/toolkit/mozapps/update/test/unit/test_0200_app_launch_apply_update.js | Exceeded MAX_TIMEOUT_RUNS whilst waiting for updates log to be created - See following stack:
JS frame :: c:\talos-slave\test\build\xpcshell\head.js :: do_throw :: line 440
JS frame :: c:/talos-slave/test/build/xpcshell/tests/toolkit/mozapps/update/test/unit/test_0200_app_launch_apply_update.js :: checkUpdateFinished :: line 250
JS frame :: c:\talos-slave\test\build\xpcshell\head.js :: <TOP_LEVEL> :: line 121
TEST-INFO | (xpcshell/head.js) | exiting test
TEST-UNEXPECTED-FAIL | c:\talos-slave\test\build\xpcshell\head.js | exception thrown from do_timeout callback: 2147500036 - See following stack:
JS frame :: c:\talos-slave\test\build\xpcshell\head.js :: do_throw :: line 440
JS frame :: c:\talos-slave\test\build\xpcshell\head.js :: <TOP_LEVEL> :: line 123
TEST-INFO | (xpcshell/head.js) | exiting test
TEST-INFO | c:/talos-slave/test/build/xpcshell/tests/toolkit/mozapps/update/test/unit/test_0200_app_launch_apply_update.js | [end_test : 167] removing update test directory c:\talos-slave\test\build\thunderbird\update_test
WARNING: nsExceptionService ignoring thread destruction after shutdown: file e:/builds/moz2_slave/tb-comm-cen-w32-dbg/build/mozilla/xpcom/base/nsExceptionService.cpp, line 166
WARNING: OOPDeinit() without successful OOPInit(): file e:/builds/moz2_slave/tb-comm-cen-w32-dbg/build/mozilla/toolkit/crashreporter/nsExceptionHandler.cpp, line 1992
nsStringStats
=> mAllocCount: 3042
=> mReallocCount: 511
=> mFreeCount: 3042
=> mShareCount: 8486
=> mAdoptCount: 133
=> mAdoptFreeCount: 133
<<<<<<<
TEST-UNEXPECTED-FAIL | c:\talos-slave\test\build\xpcshell\tests\toolkit\mozapps\update\test\unit\test_0201_app_launch_apply_update.js | test failed (with xpcshell return code: 3), see following log:
>>>>>>>
### XPCOM_MEM_LEAK_LOG defined -- logging leaks to c:\docume~1\cltbld\locals~1\temp\tmpi2rtk0\runxpcshelltests_leaks.log
TEST-INFO | (xpcshell/head.js) | test 1 pending
TEST-INFO | (xpcshell/head.js) | test 2 pending
TEST-INFO | c:/talos-slave/test/build/xpcshell/tests/toolkit/mozapps/update/test/unit/test_0201_app_launch_apply_update.js | [adjustPathsOnWindows : 285] Using this new bin directory: c:\docume~1\cltbld\locals~1\temp\tmpi2rtk0\ExecutableDir.tmp\bin
TEST-PASS | c:/talos-slave/test/build/xpcshell/tests/toolkit/mozapps/update/test/unit/test_0201_app_launch_apply_update.js | [run_test : 159] true == true
TEST-INFO | (xpcshell/head.js) | test 2 finished
TEST-INFO | (xpcshell/head.js) | running event loop
TEST-UNEXPECTED-FAIL | c:/talos-slave/test/build/xpcshell/tests/toolkit/mozapps/update/test/unit/test_0201_app_launch_apply_update.js | Exceeded MAX_TIMEOUT_RUNS whilst waiting for update to be applied - See following stack:
JS frame :: c:\talos-slave\test\build\xpcshell\head.js :: do_throw :: line 440
JS frame :: c:/talos-slave/test/build/xpcshell/tests/toolkit/mozapps/update/test/unit/test_0201_app_launch_apply_update.js :: checkUpdateApplied :: line 338
JS frame :: c:\talos-slave\test\build\xpcshell\head.js :: <TOP_LEVEL> :: line 121
TEST-INFO | (xpcshell/head.js) | exiting test
TEST-UNEXPECTED-FAIL | c:\talos-slave\test\build\xpcshell\head.js | exception thrown from do_timeout callback: 2147500036 - See following stack:
JS frame :: c:\talos-slave\test\build\xpcshell\head.js :: do_throw :: line 440
JS frame :: c:\talos-slave\test\build\xpcshell\head.js :: <TOP_LEVEL> :: line 123
TEST-INFO | (xpcshell/head.js) | exiting test
c:/talos-slave/test/build/xpcshell/tests/toolkit/mozapps/update/test/unit/test_0201_app_launch_apply_update.js:194: TypeError: gProcess is undefined
WARNING: nsExceptionService ignoring thread destruction after shutdown: file e:/builds/moz2_slave/tb-comm-cen-w32-dbg/build/mozilla/xpcom/base/nsExceptionService.cpp, line 166
WARNING: OOPDeinit() without successful OOPInit(): file e:/builds/moz2_slave/tb-comm-cen-w32-dbg/build/mozilla/toolkit/crashreporter/nsExceptionHandler.cpp, line 1992
nsStringStats
=> mAllocCount: 3693
=> mReallocCount: 296
=> mFreeCount: 3693
=> mShareCount: 9531
=> mAdoptCount: 143
=> mAdoptFreeCount: 143
<<<<<<<
TEST-UNEXPECTED-FAIL | c:\talos-slave\test\build\xpcshell\tests\toolkit\mozapps\update\test\unit\test_0203_app_launch_apply_update.js | test failed (with xpcshell return code: 3), see following log:
>>>>>>>
### XPCOM_MEM_LEAK_LOG defined -- logging leaks to c:\docume~1\cltbld\locals~1\temp\tmpw1_qhz\runxpcshelltests_leaks.log
TEST-INFO | (xpcshell/head.js) | test 1 pending
TEST-INFO | (xpcshell/head.js) | test 2 pending
TEST-INFO | c:/talos-slave/test/build/xpcshell/tests/toolkit/mozapps/update/test/unit/test_0203_app_launch_apply_update.js | [adjustPathsOnWindows : 313] Using this new bin directory: c:\docume~1\cltbld\locals~1\temp\tmpw1_qhz\ExecutableDir.tmp\bin
TEST-PASS | c:/talos-slave/test/build/xpcshell/tests/toolkit/mozapps/update/test/unit/test_0203_app_launch_apply_update.js | [run_test : 166] true == true
TEST-INFO | (xpcshell/head.js) | test 2 finished
TEST-INFO | (xpcshell/head.js) | running event loop
TEST-UNEXPECTED-FAIL | c:/talos-slave/test/build/xpcshell/tests/toolkit/mozapps/update/test/unit/test_0203_app_launch_apply_update.js | Exceeded whilst waiting for update to be applied - See following stack:
JS frame :: c:\talos-slave\test\build\xpcshell\head.js :: do_throw :: line 440
JS frame :: c:/talos-slave/test/build/xpcshell/tests/toolkit/mozapps/update/test/unit/test_0203_app_launch_apply_update.js :: checkUpdateApplied :: line 366
JS frame :: c:\talos-slave\test\build\xpcshell\head.js :: <TOP_LEVEL> :: line 121
TEST-INFO | (xpcshell/head.js) | exiting test
TEST-UNEXPECTED-FAIL | c:\talos-slave\test\build\xpcshell\head.js | exception thrown from do_timeout callback: 2147500036 - See following stack:
JS frame :: c:\talos-slave\test\build\xpcshell\head.js :: do_throw :: line 440
JS frame :: c:\talos-slave\test\build\xpcshell\head.js :: <TOP_LEVEL> :: line 123
TEST-INFO | (xpcshell/head.js) | exiting test
c:/talos-slave/test/build/xpcshell/tests/toolkit/mozapps/update/test/unit/test_0203_app_launch_apply_update.js:222: TypeError: gProcess is undefined
WARNING: nsExceptionService ignoring thread destruction after shutdown: file e:/builds/moz2_slave/tb-comm-cen-w32-dbg/build/mozilla/xpcom/base/nsExceptionService.cpp, line 166
WARNING: OOPDeinit() without successful OOPInit(): file e:/builds/moz2_slave/tb-comm-cen-w32-dbg/build/mozilla/toolkit/crashreporter/nsExceptionHandler.cpp, line 1992
nsStringStats
=> mAllocCount: 3734
=> mReallocCount: 299
=> mFreeCount: 3734
=> mShareCount: 9568
=> mAdoptCount: 145
=> mAdoptFreeCount: 145
<<<<<<<
Assignee | ||
Updated•13 years ago
|
Whiteboard: [tb-orange]
Comment hidden (Legacy TBPL/Treeherder Robot) |
Comment hidden (Legacy TBPL/Treeherder Robot) |
Comment hidden (Legacy TBPL/Treeherder Robot) |
Comment hidden (Legacy TBPL/Treeherder Robot) |
Comment hidden (Legacy TBPL/Treeherder Robot) |
Comment hidden (Legacy TBPL/Treeherder Robot) |
Comment hidden (Legacy TBPL/Treeherder Robot) |
Comment hidden (Legacy TBPL/Treeherder Robot) |
Comment hidden (Legacy TBPL/Treeherder Robot) |
Comment hidden (Legacy TBPL/Treeherder Robot) |
Comment hidden (Legacy TBPL/Treeherder Robot) |
Comment hidden (Legacy TBPL/Treeherder Robot) |
Comment hidden (Legacy TBPL/Treeherder Robot) |
Comment hidden (Legacy TBPL/Treeherder Robot) |
Comment hidden (Legacy TBPL/Treeherder Robot) |
Comment hidden (Legacy TBPL/Treeherder Robot) |
Comment hidden (Legacy TBPL/Treeherder Robot) |
Comment hidden (Legacy TBPL/Treeherder Robot) |
Comment hidden (Legacy TBPL/Treeherder Robot) |
Comment hidden (Legacy TBPL/Treeherder Robot) |
Comment hidden (Legacy TBPL/Treeherder Robot) |
Comment hidden (Legacy TBPL/Treeherder Robot) |
Comment hidden (Legacy TBPL/Treeherder Robot) |
Comment hidden (Legacy TBPL/Treeherder Robot) |
Assignee | ||
Comment 25•13 years ago
|
||
I think I'm getting a handle on at least one of the test issues. I've currently got a patch running on try server for it.
Assignee: nobody → mbanner
Assignee | ||
Comment 26•13 years ago
|
||
I've got test_0201 and test_0203 to run further on try server with:
+++ b/toolkit/mozapps/update/test/unit/head_update.js.in
+#ifdef MOZ_MAINTENANCE_SERVICE
const STATE_APPLIED_PLATFORM = IS_WIN ? STATE_APPLIED_SVC : STATE_APPLIED;
+#else
+const STATE_APPLIED_PLATFORM = STATE_APPLIED;
+#endif
This obviously didn't quite take account of the maintenance service not being in use.
With this fix the broken tests all get to the same state where checkUpdateFinished fails due to not seeing the succeeded state. I've got some more debug running for that on try.
Assignee | ||
Comment 27•13 years ago
|
||
(In reply to Mark Banner (:standard8) from comment #26)
> With this fix the broken tests all get to the same state where
> checkUpdateFinished fails due to not seeing the succeeded state. I've got
> some more debug running for that on try.
So this step is stuck because the state is "applied" and not "succeeded". It seems like the second run of the app to complete the update isn't progressing to the succeeded state. I did try setting app.update.stage.enabled to true, but that didn't work either.
Hence currently I'm at a bit of a loss as to why this isn't working (just on windows as well).
Assignee | ||
Comment 28•13 years ago
|
||
This doesn't fix it fully, but we might as well progress this a bit further.
As mentioned in comment 26, this takes account of the maintenance service not necessarily being in use on Windows and then changes the correct state. This gets test_0201 and test_0203 through the checkUpdateApplied state to the checkUpdateFinished state.
I've also added a little bit more debug for when we're timing out - so that we know what state we're in, and made the debug more consistent across all the files.
Attachment #638280 -
Flags: review?(ehsan)
Assignee | ||
Comment 29•13 years ago
|
||
Oh and any hints to the checkUpdateFinished issues would be greatly appreciated, I'm not sure what's going on there.
Try server runs with the latest patch will appear here in the next couple of hours:
https://tbpl.mozilla.org/?tree=Thunderbird-Try&noignore=1&rev=b2d1c1f4b982
Comment hidden (Legacy TBPL/Treeherder Robot) |
Comment hidden (Legacy TBPL/Treeherder Robot) |
Comment hidden (Legacy TBPL/Treeherder Robot) |
Comment hidden (Legacy TBPL/Treeherder Robot) |
Comment 34•13 years ago
|
||
Comment on attachment 638280 [details] [diff] [review]
Partial fix and debug clean up
Review of attachment 638280 [details] [diff] [review]:
-----------------------------------------------------------------
::: toolkit/mozapps/update/test/unit/head_update.js.in
@@ +292,4 @@
> const STATE_APPLIED_PLATFORM = IS_WIN ? STATE_APPLIED_SVC : STATE_APPLIED;
> +#else
> +const STATE_APPLIED_PLATFORM = STATE_APPLIED;
> +#endif
This is not what we want. So it turns out that Thunderbird doesn't define MOZ_MAINTENANCE_SERVICE at all, so we should just disable these tests on Thunderbird, I think!
Instead of this, at the beginning of shouldRunServiceTest, just do an ifndef MOZ_MAINTENANCE_SERVICE, and return false. :-)
::: toolkit/mozapps/update/test/unit/test_0200_app_launch_apply_update.js
@@ +247,4 @@
> log.append(FILE_UPDATE_LOG);
> if (!log.exists()) {
> if (gTimeoutRuns > MAX_TIMEOUT_RUNS)
> + do_throw("Exceeded MAX_TIMEOUT_RUNS whilst waiting for updates log to be created at" + log.path);
Nit: space before ".
::: toolkit/mozapps/update/test_svc/unit/test_0200_app_launch_apply_update_svc.js
@@ +204,4 @@
> log.append(FILE_UPDATE_LOG);
> if (!log.exists()) {
> if (++gTimeoutRuns > MAX_TIMEOUT_RUNS)
> + do_throw("Exceeded MAX_TIMEOUT_RUNS whilst waiting for updates log to be created at" + log.path);
Ditto.
Attachment #638280 -
Flags: review?(ehsan) → review-
Comment 35•13 years ago
|
||
Comment on attachment 638280 [details] [diff] [review]
Partial fix and debug clean up
OK, I didn't realize this patch also affects the non _svc tests. r=me then!
Attachment #638280 -
Flags: review- → review+
Assignee | ||
Comment 36•13 years ago
|
||
Ok, latest update is that I think I may have found the issue.
In confvars.sh Thunderbird doesn't specify MOZ_APP_BASENAME. A side-effect of this is that update-settings.ini doesn't get generated.
Although it looks like the unit tests should pass without this (as at least in some places they generate it themselves), I think I may have missed something with it being missing, or something else due to MOZ_APP_BASENAME as a try run with MOZ_APP_BASENAME set has passed the test_0200_app_launch_apply_update.js run.
test_0201 & test_0203 didn't pass because the run didn't include the patch from this bug. I'm now rebuilding with that patch overnight to check this out in more detail.
Assignee | ||
Comment 37•13 years ago
|
||
Status: NEW → RESOLVED
Closed: 13 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla16
Assignee | ||
Comment 38•13 years ago
|
||
Comment on attachment 638280 [details] [diff] [review]
Partial fix and debug clean up
[Approval Request Comment]
Bug caused by (feature/regressing bug #): bug 307181
User impact if declined: None, test-only
Testing completed (on m-c, etc.): Landed on m-c
Risk to taking this patch (and alternatives if risky): None
String or UUID changes made by this patch: None
Test-only change, last in a series of permanent orange fixes for apps which don't yet use the maintenance service.
Attachment #638280 -
Flags: approval-mozilla-aurora?
Comment 39•13 years ago
|
||
Comment on attachment 638280 [details] [diff] [review]
Partial fix and debug clean up
[Triage Comment]
Test-only orange fix for fallout from bg updates. Approved for Aurora 15.
Attachment #638280 -
Flags: approval-mozilla-aurora? → approval-mozilla-aurora+
Comment 40•13 years ago
|
||
status-firefox15:
--- → fixed
Comment 41•12 years ago
|
||
test_0200_app_launch_apply_update.js, test_0201_app_launch_apply_update.js and test_0203_app_launch_apply_update.js are now passing on all the OSs:
https://tbpl.mozilla.org/php/getParsedLog.php?id=14334271&full=1&branch=mozilla-beta
https://tbpl.mozilla.org/php/getParsedLog.php?id=14337190&full=1&branch=mozilla-beta
https://tbpl.mozilla.org/php/getParsedLog.php?id=14336773&full=1&branch=mozilla-beta
https://tbpl.mozilla.org/php/getParsedLog.php?id=14334613&full=1&branch=mozilla-beta
Updated•12 years ago
|
Keywords: intermittent-failure
Updated•12 years ago
|
Whiteboard: [tb-orange]
You need to log in
before you can comment on or make changes to this bug.
Description
•