[c-c msOS] perma test failures in toolkit/mozapps/update/tests/ for Mac (toolkit/mozapps/update/tests/unit_aus_update/multiSessionInstallLockout.js, marAppApplyUpdateSuccess.js, marAppApplyUpdateStageSuccess.js)
Categories
(Thunderbird :: Upstream Synchronization, defect)
Tracking
(Not tracked)
People
(Reporter: darktrojan, Assigned: darktrojan)
References
Details
(Keywords: intermittent-failure)
Attachments
(1 file)
We've got some new failures on Mac:
- toolkit/mozapps/update/tests/unit_aus_update/multiSessionInstallLockout.js
- toolkit/mozapps/update/tests/unit_base_updater/marAppApplyUpdateSuccess.js
- toolkit/mozapps/update/tests/unit_base_updater/marAppApplyUpdateStageSuccess.js
Here's an example failure log.
They'll be from bug 1907120, bug 1907126, or bug 1907127. I tried adding the preferences in this revision which changed the behaviour (the OS gave me a warning about launching an application) but that didn't really help and I gave up.
Updated•2 months ago
|
Assignee | ||
Comment 1•2 months ago
|
||
Robin, do you have any idea why these failures might be happening when the tests are run in Thunderbird?
Comment 2•2 months ago
|
||
Interestingly, I had problems with these same three tests, I believe only on macOS, when developing these patches. But the thing is that I backtracked on the issue that caused this in Firefox and took a different approach. But it seems like some related problem still exists on Thunderbird for some reason.
These three tests are a bit unusual. multiSessionInstallLockout.js
is the only one test that runs runUpdateUsingApp
more than once. And the other two are the only tests that use the removeOriginalFile
feature and they use it to remove bits of the the updater binary. This has a slightly complicated interaction with the function that copies the updater in to place, copyTestUpdaterToBinDir
.
Originally, I ended up with problems where, on macOS, I'd end up with a partial updater app on the second call to runUpdateUsingApp
in multiSessionInstallLockout.js
. Since the updater app directory existed, this line prevented the app from being rewritten. I never did figure out why the directory already existed in that case; seems like it shouldn't have. But when I tried to remove that line from copyTestUpdaterToBinDir
and unconditionally overwrite the updater app, that caused the marAppApplyUpdate(Stage)?Success.js
tests to fail because they reran that function after calling removeOriginalFile
and suddenly the removed file was back. Because so many other tests call into the functions that those two call into, fixing them to not call that again seemed like a problem. So I reverted copyTestUpdaterToBinDir
and added this line instead, which prevented that part of the initialization from being skipped (here) when multiSessionInstallLockout.js
repeats.
I'm pretty confused about what's going on in this case. The linked test log shows that we are waiting for the application process launched with runUpdateUsingApp
to run this, which it generally runs before it exits for the final time. I can't really figure out what, if any, connection there is between the previous problems and this one. Given that other tests use runUpdateUsingApp
besides these 3, it seems unlikely to be a problem with that code specifically. It seems more likely that you are having some kind of a problem with bit of the updater app being missing and consequently the thing not running at all, like the problem I had the first time. But I can't figure out why just by reading the logs.
Updated•2 months ago
|
Comment hidden (Intermittent Failures Robot) |
Comment hidden (Intermittent Failures Robot) |
Comment hidden (Intermittent Failures Robot) |
Comment 6•21 days ago
|
||
going to disable this test on macosx1100 for perma timeout in bug 1942377
Comment hidden (Intermittent Failures Robot) |
Comment 8•15 days ago
|
||
toolkit/mozapps/update/tests/unit_update_binary/marAppApplyUpdateStageSuccess.js and toolkit/mozapps/update/tests/unit_aus_update/multiSessionInstallLockout.js are still permafailing.
Comment hidden (Intermittent Failures Robot) |
Comment hidden (Intermittent Failures Robot) |
Assignee | ||
Comment 11•10 days ago
|
||
I have figured out what's wrong. The update .app we're trying to run has "firefox" wired in as the name of the executable, but the actual executable is "thunderbird". Checking with a try run then I'll push a patch.
Assignee | ||
Comment 12•10 days ago
|
||
Comment 13•9 days ago
|
||
Comment 14•9 days ago
|
||
bugherder |
Comment hidden (Intermittent Failures Robot) |
Description
•