Closed Bug 375619 Opened 19 years ago Closed 15 years ago

"franken" firefox on disk if you kill updater.exe mid-way, should we attempt to restore moz-backup files if update.status == "applying"?

Categories

(Toolkit :: Application Update, defect)

defect
Not set
normal

Tracking

()

RESOLVED WONTFIX

People

(Reporter: moco, Unassigned)

References

Details

"franken" firefox on disk if you kill updater.exe mid-way justin and I saw this with bug #373908 steps to reproduce: 1) run firefox, get an update 2) restart, while update is applying (updater is running), kill it. This is easy when you hit bug bug #373908 as it hits an infinite loop and pings the CPU. when you start firefox back up, you'll be in a "fraken" firefox state, and weirdness can ensue because some of your files are "old" and some are "new" your update.status file will have "applying", and your firefox app dir will have .moz-backup files. one thing we could do is detect this "applying" state and restore all the .moz-backup files
note, if I had a franken-fox and I received a complete update, that should fix the problem (as a complete update would reset things). That is assuming we could handle .moz-backup files that already exists (not sure about that, I need to check.) I think we should consider fixing this bug for Firefox 3 so that we are more robust about handling a sudden death of updater.exe
benjamin, would this scenario still be a problem after your proposed improvements to updater?
Yes, but it's much less likely since we're not doing any I/O and updater is almost instantaneous. However, it can leave behind .moz-backup files in the somewhat-ordinary case that there are DLLs in use when the update happens (e.g. AccessibleMarshal.dll).
Also note that backup_restore uses copy (see the comment :P): http://mxr.mozilla.org/mozilla-central/source/toolkit/mozapps/update/src/updater/updater.cpp#488 If the "sudden death" happens when restoring from backup then you probably end up with corrupt files. (In reply to comment #1) > note, if I had a franken-fox and I received a complete update, that should fix > the problem (as a complete update would reset things). That is assuming we > could handle .moz-backup files that already exists (not sure about that, I need > to check.) Since the initial backup_create is a copy, how do we know that the updater wasn't killed while making the backup? It seems like we want to try to apply a complete in this scenario, I'm not sure that restoring the moz-backup file is safe..
Product: Firefox → Toolkit
OS: Windows XP → All
Hardware: x86 → All
The number of frankenfoxes appear to be extremely small now and I think it is better to spend time and effort lessening that number further instead of fixing bugs like this which are extreme edgecases. Total crashes processed : 31761889 Firefox 3.5 Mismatched File Version Report 20101204 through 20110411 Summary ============================= Lines processed : 1711982 Crashes processed : 1721575 Lines skipped : 361 Total mismatches : 137788 Percent mismatches : 8.00% Skipped Line Breakdown =============================== Invalid firefox.exe name : 309 Missing version info : 52 Mismatched Versions ==============================================================================+ | Total | DLLVer < FFVer | DLLVer > FFVer | +------------------+-----------------+----------------+ Total mismatches : 137788 (100.00%) | 135850 (98.59%) | 1938 (1.41%) | browserdirprovider.dll : 13507 (9.80%) | 11575 (8.40%) | 1932 (1.40%) | brwsrcmp.dll : 6087 (4.42%) | 4894 (3.55%) | 1193 (0.87%) | xpcom.dll : 101843 (73.91%) | 101810 (73.89%) | 33 (0.02%) | xul.dll : 135854 (98.60%) | 135823 (98.57%) | 31 (0.02%) | +------------------+-----------------+----------------+ Firefox 3.6 Mismatched File Version Report 20101204 through 20110411 Summary ============================== Lines processed : 20277061 Crashes processed : 20278718 Lines skipped : 3797 Total mismatches : 49995 Percent mismatches : 0.25% Skipped Line Breakdown ================================ Invalid line format : 34 Invalid firefox.exe name : 2907 Missing version info : 857 Mismatched Versions ==============================================================================+ | Total | DLLVer < FFVer | DLLVer > FFVer | +------------------+-----------------+----------------+ Total mismatches : 49995 (100.00%) | 1039 (2.08%) | 48956 (97.92%) | browserdirprovider.dll : 48685 (97.38%) | 370 (0.74%) | 48315 (96.64%) | brwsrcmp.dll : 48465 (96.94%) | 351 (0.70%) | 48114 (96.24%) | xpcom.dll : 16297 (32.60%) | 426 (0.85%) | 15871 (31.75%) | xul.dll : 7903 (15.81%) | 877 (1.75%) | 7026 (14.05%) | +------------------+-----------------+----------------+ Firefox 4.0 Mismatched File Version Report 20101111 through 20110411 Summary ============================= Lines processed : 9750994 Crashes processed : 9761596 Lines skipped : 954 Total mismatches : 3679 Percent mismatches : 0.04% Skipped Line Breakdown =============================== Invalid line format : 46 Invalid firefox.exe name : 246 Missing version info : 664 Mismatched Versions ==============================================================================+ | Total | DLLVer < FFVer | DLLVer > FFVer | +------------------+-----------------+----------------+ Total mismatches : 3679 (100.00%) | 95 (2.58%) | 3584 (97.42%) | browsercomps.dll : 3501 (95.16%) | 82 (2.23%) | 3419 (92.93%) | mozalloc.dll : 2110 (57.35%) | 77 (2.09%) | 2033 (55.26%) | xpcom.dll : 2067 (56.18%) | 75 (2.04%) | 1992 (54.15%) | xul.dll : 2531 (68.80%) | 77 (2.09%) | 2454 (66.70%) | +------------------+-----------------+----------------+ [reply] [-] Private Comment 26 Robert Strong [:rstrong] (do not email) 2011-04-13 22:50:16 PDT Going back just two weeks of Firefox 4 the numbers are tad better coming in at 0.02% vs 0.05% and the same is true going back 4 weeks. Firefox 4.0 Mismatched File Version Report 20110329 through 20110411 Summary ============================ Lines processed : 841619 Crashes processed : 841894 Lines skipped : 84 Total mismatches : 175 Percent mismatches : 0.02% Skipped Line Breakdown ============================== Invalid line format : 1 Invalid firefox.exe name : 16 Missing version info : 67 Mismatched Versions ==============================================================================+ | Total | DLLVer < FFVer | DLLVer > FFVer | +------------------+-----------------+----------------+ Total mismatches : 175 (100.00%) | 5 (2.86%) | 170 (97.14%) | browsercomps.dll : 169 (96.57%) | 4 (2.29%) | 165 (94.29%) | mozalloc.dll : 94 (53.71%) | 4 (2.29%) | 90 (51.43%) | xpcom.dll : 98 (56.00%) | 4 (2.29%) | 94 (53.71%) | xul.dll : 147 (84.00%) | 5 (2.86%) | 142 (81.14%) | +------------------+-----------------+----------------+
Status: NEW → RESOLVED
Closed: 15 years ago
Resolution: --- → WONTFIX
You need to log in before you can comment on or make changes to this bug.