Closed Bug 833933 Opened 11 years ago Closed 9 years ago

If an update fails to be applied (due to invalid mar file), UI still says Uncompressing...

Categories

(Firefox OS Graveyard :: Gaia::System, defect)

ARM
Gonk (Firefox OS)
defect
Not set
normal

Tracking

(blocking-b2g:-, b2g18+)

RESOLVED DUPLICATE of bug 1212884
blocking-b2g -
Tracking Status
b2g18 + ---

People

(Reporter: dhylands, Unassigned)

Details

I created a 40 Mb update.mar file full of binary zeroes, and created an update for it (so the update was properly signed).

The AUS downloader generated a failure, but the UI continued to show "Uncompressing..."

Here's the relevant snippet of logcat:

*** AUS:SVC Downloader:onProgress - progress: 26923008/41943040
*** AUS:SVC Downloader:onProgress - progress: 30330880/41943040
*** AUS:SVC Downloader:onProgress - progress: 34312192/41943040
*** AUS:SVC Downloader:onProgress - progress: 37736448/41943040
*** AUS:SVC Downloader:onProgress - progress: 41209856/41943040
*** AUS:SVC Downloader:onProgress - progress: 41943040/41943040
*** AUS:SVC Downloader:onStopRequest - original URI spec: http://localhost/fake-update.mar, final URI spec: http://localhost/fake-update.mar, status: 0
*** AUS:SVC Downloader:onStopRequest - status: 0, current fail: 0, max fail: 20, retryTimeout: 30000
*** AUS:SVC Downloader:_verifyDownload called
*** AUS:SVC Downloader:_verifyDownload downloaded size == expected size.
*** AUS:SVC Downloader:_verifyDownload hashes match.
*** AUS:SVC Downloader:onStopRequest - setting state to: pending
*** AUS:SVC gCanStageUpdates - able to stage updates because we'll use the service
*** AUS:SVC UpdateService:applyUpdateInBackground called with the following update: Firefox 90.0
Mounted /system partition as read-write
Finished applying update
Mounted /system partition as read-only
*** AUS:SVC readStatusFile - status: failed: 6, path: /data/local/updates/0/update.status
*** AUS:SVC getFileFromUpdateLink linkFile.path: /data/local/updates/0/update.link, link: /mnt/sdcard/updates/0/update.mar
nsVolumeMountLock released for 'sdcard'
nsVolume: sdcard state Mounted @ '/mnt/sdcard' gen 1 locked 0
UpdateState: umsAvail:1 umsEnabled:1 mode:0 usbCablePluggedIn:1 tryToShare:0
UpdateState: Volume sdcard is Mounted and inserted @ /mnt/sdcard gen 1 locked 0
UpdateState: umsAvail:1 umsEnabled:1 mode:0 usbCablePluggedIn:1 tryToShare:0
UpdateState: Volume sdcard is Mounted and inserted @ /mnt/sdcard gen 1 locked 0
*** AUS:SVC handleFallbackToCompleteUpdate - install of complete or only one patch offered failed.
*** AUS:SVC UpdateManager:refreshUpdateStatus - Notifying observers that the update was staged. state: failed, status: failed: 6
Remove idle observer 47496580 (1 seconds)

I was able recover by pressing on Uncompressing and cancelling the download, but that should have happened automatically.

I filed this under gaia, but I suspect that there are issues at the platform as well.
From Dave in a mail :


        I also noticed that removeFromDownloadsQueue (in update_manager.js)
        should set this._uncompressing to false when it sets this._downloading
        to false.

        I also think that addToDownloadsQueue should also set
        this._uncompressing to false when it sets this._downloading to true.

This is most probably the reason here.
tracking-b2g18: --- → ?
OS: Linux → Gonk (Firefox OS)
Hardware: x86_64 → ARM
Which raises another question.

Should _downloading be set to false when _compressing is set to true?

Or is the intention that _downloading includes _compressing?
I think it is; we check for _downloading in several places to prevent showing any more notification while something is happening.

It may make sense to rename the variable though, or to introduce a new one.
Perhaps it should be called _updating since it covers the entire process.
blocking-b2g: --- → koi?
Dave, is this blocking?
Flags: needinfo?(dhylands)
It's recoverable, but probably still a bug on the gaia side.

Whether it should be blocking or not, I'm not sure. Thanks for reminding me about it though. I should probably code up a patch and fix it on master for sure.
Flags: needinfo?(dhylands)
blocking-b2g: koi? → -
Status: NEW → RESOLVED
Closed: 9 years ago
Resolution: --- → DUPLICATE
You need to log in before you can comment on or make changes to this bug.