Closed Bug 862173 Opened 7 years ago Closed 5 years ago
main thread I/O in update service
Several guilty call sites: - readStringFromInputStream/readStringFromFile/writeStringToFile - cleanUpUpdatesDir - _loadXMLFileIntoArray - _verifyDownload - others I imagine some of this stuff might be difficult to convert to async/off-main-thread I/O using OS.File due to API requirements. But maybe there are some easy targets?
I just got a 5 minute hang in Nightly while it downloaded and verified a full update on the main thread. Can we prioritize this work?
The profile shows that the vast majority of time was spent in Downloader__VerifyDownload() -> nsCryptoHash::UpdateFromStream. I'm on Windows 10, using a magnetic HDD
Definitely and with other security measures in place this can most likely be removed.
Assignee: nobody → robert.strong.bugs
Status: NEW → ASSIGNED
Attachment #8650056 - Attachment is obsolete: true
The attached a patch in progress (still need to fix a couple of more tests) disables this check for platforms when mar signing is enabled which is simple and covers all the cases we care about. I don't think it is worth moving it off the main thread since it is only needed when mar signing is disabled and all apps should move to mar signing just as Firefox has if they haven't already done so.
This should fix up the remaining test failure pushed to try https://treeherder.mozilla.org/#/jobs?repo=try&revision=414794e29bf4
Attachment #8650157 - Attachment is obsolete: true
Attachment #8650232 - Flags: review?(spohl.mozilla.bugs)
Attachment #8650232 - Flags: review?(spohl.mozilla.bugs) → review+
You need to log in before you can comment on or make changes to this bug.