Open Bug 1923493 Opened 1 year ago Updated 1 year ago

Make `backgroundupdate` task ignore update mutex/other instances updating when JS debugger is connected

Categories

(Toolkit :: Application Update, enhancement, P3)

enhancement

Tracking

()

People

(Reporter: nalexander, Unassigned)

References

Details

Yesterday I was trying to debug the backgroundupdate task with the JS debugger (on Windows). Bug 1794051 worked like a charm... right up until the Update Service (correctly) reports that other instances are updating Firefox, which can happen when the Browser Toolbox process wins the race to take the update mutex first.

This ticket tracks doing something to https://searchfox.org/mozilla-central/rev/488d81581a9142d532bf814efa60564ff11599ca/toolkit/mozapps/update/UpdateService.sys.mjs#4007-4009 (or friends of that function) to allow the backgroundupdate task to avoid being blocked while debugging. For future me: stealing the "wrong" update lock from within UpdateService.sys.mjs, like:

gUpdateMutexHandle = createMutex(getPerInstallationMutexName(true) + "1", false);

avoids barrier 1, and the following avoids barrier 2:

Cc["@mozilla.org/updates/update-sync-manager;1"].getService(Ci.nsIUpdateSyncManager).resetLock(Services.dirsvc.get("ProfD", Ci.nsIFile));
Priority: -- → P3
You need to log in before you can comment on or make changes to this bug.