Closed Bug 1165195 Opened 9 years ago Closed 9 years ago

[2.1][2.2][Flame][Settings][OTA] Can't detect update.

Categories

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

ARM
Gonk (Firefox OS)
defect
Not set
major

Tracking

(b2g-v2.1 affected, b2g-v2.2 verified)

RESOLVED FIXED
Tracking Status
b2g-v2.1 --- affected
b2g-v2.2 --- verified

People

(Reporter: wangxiaomei, Unassigned, NeedInfo)

References

Details

(Keywords: regression, smoketest)

Attachments

(4 files, 1 obsolete file)

Attached file logcat_0107.txt
[1.Description]:
[Flame][v2.1 & v2.2][Settings]Device will inform user no updates were found after user check updates from settings > Device information >check now
Time:1:07
See attachment logcat_0107.txt and 0107.mp4

[2.Testing Steps]: 
1.Flash Flame 2.2 user to   20150514002501 user.
2.Conecte an ap.
3.Check updates from settings > Device information >check now.

[3.Expected Result]: 
3.The system update will appear in the notification bar. 


[4.Actual Result]: 
3.Can't find an available updates.


[5.Reproduction build]: 
Flame2.2(Affected):
Build ID               20150514002501
Gaia Revision          aac58a063e3e6acae6ba77fe4cec224fb69450bc
Gaia Date              2015-05-13 12:59:48
Gecko Revision         https://hg.mozilla.org/releases/mozilla-b2g37_v2_2/rev/47f1ced9f1d6
Gecko Version          37.0
Device Name            flame
Firmware(Release)      4.4.2
Firmware(Incremental)  eng.cltbld.20150514.040432
Firmware Date          Thu May 14 04:04:43 EDT 2015
Bootloader             L1TC000118D0

Flame2.1(Affected):
Build ID               20150514001201
Gaia Revision          c80865cb0bf73f1b97defbc646083b404feb3ac4
Gaia Date              2015-05-12 06:26:43
Gecko Revision         https://hg.mozilla.org/releases/mozilla-b2g34_v2_1/rev/23eb9df75991
Gecko Version          34.0
Device Name            flame
Firmware(Release)      4.4.2
Firmware(Incremental)  eng.cltbld.20150514.035617
Firmware Date          Thu May 14 03:56:27 EDT 2015
Bootloader             L1TC000118D0
[6.Reproduction Frequency]: 
Always Recurrence,10/10

[7.TCID]: 
2313
Attached video 0107.mp4
From the log, I found that there is no xml returned back. 
Also check the latest xml, it's 20150511002501.

Hi Chris,
Do you have any idea why the xml is not uploaded to aus4.mozilla.org?
Flags: needinfo?(catlee)
Keywords: regression
See Also: → 1164037
due to bug 1164041 I imagine
Depends on: 1164041
Flags: needinfo?(catlee)
The OTA rules were removed from Balrog due to bug 1162032, wcosta is working on getting some of those rules in place again for flame-kk
Keywords: smoketest
Summary: [Flame][Settings][OTA] Can't detect update. → [2.1][2.2][Flame][Settings][OTA] Can't detect update.
I am not sure if that's the only reason for not getting 2.2/2.1 OTAs.  I think something else is amiss:
https://aus4.mozilla.org/update/3/B2G/37.0/20150514162500/flame/en-US/nightly-b2g37/Boot2Gecko%202.2.0.0-prerelease%20%28SDK%2019%29/default/default/update.xml?force=1

Doesn't seem to be showing any xml data.

I tweaked the setting in balrog.  I think we need a new build to see if it was setup correctly?
Flags: needinfo?(nhirata.bugzilla)
Blocks: 1148257
Component: Gaia::Settings → Gaia::System
Flags: needinfo?(nhirata.bugzilla)
Flags: needinfo?(nhirata.bugzilla)
Blocks: 1166522
Flags: needinfo?(nhirata.bugzilla)
¡Hola sunny!

Is this why a Flame on Firefox OS 2.2 hasn't updated since 4/26/2015?

¡Gracias!
Flags: needinfo?(wangxiaomei)
Hi Alex, We are trying to fix it, you can also check bug 1166522 for info.
Flags: needinfo?(wangxiaomei)
There's a bunch of moz harness changes that happened around that time frame; I'll try looking at that first to see if anything stands out...

diff
browse 	49f913fc2fb7
2015-05-13 00:44 -0700 	Aus Lacroix - bug 1159960 - Update mozharness to use taskcluster-npm-cache. r=jgriffin
diff
browse 	c5fbe5b9de2c
2015-05-12 17:58 -0400 	Ryan VanderMeulen - Bug 1162032 - [mozharness] Remove support for JB Flame device image builds. r=rail
diff
browse 	608ee303f9b5
2015-05-12 17:58 -0400 	Ryan VanderMeulen - Bug 1162032 - [mozharness] Turn off automation for mozilla-b2g30_v1_4. r=rail
Flags: needinfo?(nhirata.bugzilla)
Asked Ryan to take a look.  clearing ni?wcosta.
Flags: needinfo?(wcosta)
Turns out it's a balrog issue completely.  Bhearsum is helping me understand the broken parts.
OK!  So after I spoke with bhearsum, I created two sets of rules for both 2.1 and 2.2; the difference is the flame-kk and the flame device targets.  Having said that flame-kk is the only one that works on balrog; there's some issue with the flame target.  Balrog should see updates for 2.1 and 2.2 on the following urls:

2.1: 
https://aus4.mozilla.org/update/3/B2G/34.0/20150514162500/flame-kk/en-US/nightly-b2g34/Boot2Gecko%202.1.0.0-prerelease%20%28SDK%2019%29/default/default/update.xml?force=1

2.2: 
https://aus4.mozilla.org/update/3/B2G/37.0/20150514162500/flame-kk/en-US/nightly-b2g37/Boot2Gecko%202.2.0.0-prerelease%20%28SDK%2019%29/default/default/update.xml?force=1

In order for you to get these changes on the client side:
For both if you go to Settings -> Developer (you have to turn on developer settings in settings -> device information -> more information, scroll to the bottom and turn it on) -> scroll to the bottom and change the url from:
https://aus4.mozilla.org/update/3/%PRODUCT%/%VERSION%/%BUILDID%/%PRODUCT_DEVICE%/%LOCALE%/%CHANNEL%/%OS_VERSION%/%DISTRIBUTION%/%DISTRIBUTION_VERSION%/update.xml 
to:
https://aus4.mozilla.org/update/3/%PRODUCT%/%VERSION%/%BUILDID%/flame-kk/%LOCALE%/%CHANNEL%/%OS_VERSION%/%DISTRIBUTION%/%DISTRIBUTION_VERSION%/update.xml

Basically you are replacing %PRODUCT_DEVICE% with flame-kk.  I placed in the whole URL in the event that you may have ended up changing the url.

We're going to try getting the flame xml target correctly, I think we need a patch for that.  In the meantime, this is a work around.
Thanks Naoki, the update channel also needs to be set to 'nightly-b2g37' to get that mar from my test.
Ah, yes.  nightly-b2g37 for 2.2 and nightly-b2g34 for 2.1
Hi,

I have a Flame on which I have nightly 2.2 installed on it, and it is not updating (like everyone it seems).

I replaced the update URL within the Developper menu, with the following one (copied from above):
https://aus4.mozilla.org/update/3/%PRODUCT%/%VERSION%/%BUILDID%/flame-kk/%LOCALE%/%CHANNEL%/%OS_VERSION%/%DISTRIBUTION%/%DISTRIBUTION_VERSION%/update.xml

But I get an error message when I press the "Check Now" button:
« There was an error when checking for updates »

I am doing something wrong ?
What error message do you get? Are you sure you’re using 2.2.0.0-prerelease and the platform version is 37.0, i.e. flashed the proper version (and base image) beforehand?

Now we’re at it, my device doesn’t show "This is already the latest version..." when no update is available, at least when using the flame-kk workaround. Should it?
OS Version: 2.2.0.0-prerelease
Platform version: 37.0
Build Identifier: 20150524162504
Update Channel: nightly-b2g37

Base Image: L1TC000118D0
I flashed it with an image version of the 24 of May. Is there another version to use ?
here are the logs i got from adb shell logcat:

I/Gecko   (  211): UpdatePrompt: Forcing update check
I/Gecko   (  211): *** AUS:SVC Checker: checkForUpdates, force: true
I/Gecko   (  211): *** AUS:SVC Checker:getUpdateURL - update URL: https://aus4.mozilla.org/update/3/B2G/37.0/%BUILDID%/flame/en-US/nightly-b2g37/Boot2Gecko%202.2.0.0-prerelease%20(SDK%2019)/default/default/update.XML?force=1
I/Gecko   (  211): *** AUS:SVC Checker:checkForUpdates - sending request to: https://aus4.mozilla.org/update/3/B2G/37.0/%BUILDID%/flame/en-US/nightly-b2g37/Boot2Gecko%202.2.0.0-prerelease%20(SDK%2019)/default/default/update.XML?force=1
...
I/GeckoDump(  211): XXX FIXME : Got a mozContentEvent: force-update-check
...
I/Gecko   (  211): *** AUS:SVC Checker:onError - request.status: 2152398868
I/Gecko   (  211): *** AUS:SVC getStatusTextFromCode - transfer error: No data was received (please try again), code: 2152398868
I/Gecko   (  211): UpdatePrompt: Setting gecko.updateStatus: check-error-2152398868
I/Gecko   (  211): *** AUS:SVC UpdateService:onError - error during background update. error code: -2142568428, status text: No data was received (please try again)
Looks fine. I’m not an expert and silently following this bug for l10n purposes, but maybe "No data was received" because there is no mar file for that date due to reasons mentioned above. I’d try updating manually and see what happens tomorrow.
(In reply to Ton from comment #22)
> … because there is no mar file for that date …

On the aus that is. You could probably flash to e.g. a May 28 or later build as well if you can’t wait.
Ton, Nicolas, Please read comment 15.

There's still work to be done to get that fixed, at the same time there's a work around.  I need to get in touch with bhearsum about changing the 2.2/2.1 flame-kk to flame in the url/mapping.
Flags: needinfo?(tonnes.mb)
Flags: needinfo?(nicolas)
Flags: needinfo?(bhearsum)
Naoki: thanks, comment 15 was clear to me and updates already worked fine here. I did overlook the ‘flame’ instead of ‘flame-kk’ part though in Nicolas’s log.
I just wondered about the missing "Updated" message while it shows "*** AUS:SVC Checker:onLoad - number of updates available: 0" when updated. Is that part of what’s left to fix?
Flags: needinfo?(tonnes.mb)
Naoki: thanks (promise I will carefully read all comments from now on).
I replaced "flame" by "flame-kk", and got the same error message. The logcat give me:
I/Gecko   (  210): *** AUS:SVC Checker: checkForUpdates, force: true
I/Gecko   (  210): *** AUS:SVC Checker:getUpdateURL - update URL: https://aus4.mozilla.org/update/3/B2G/37.0/%BUILDID%/flame-kk/en-US/nightly-b2g37/Boot2Gecko%202.2.0.0-prerelease%20(SDK%2019)/default/default/update.XML?force=1
I/Gecko   (  210): *** AUS:SVC Checker:checkForUpdates - sending request to: https://aus4.mozilla.org/update/3/B2G/37.0/%BUILDID%/flame-kk/en-US/nightly-b2g37/Boot2Gecko%202.2.0.0-prerelease%20(SDK%2019)/default/default/update.XML?force=1
I/GeckoDump(  210): XXX FIXME : Got a mozContentEvent: force-update-check
...
I/Gecko   (  210): *** AUS:SVC Checker:onError - request.status: 2152398868
I/Gecko   (  210): *** AUS:SVC getStatusTextFromCode - transfer error: No data was received (please try again), code: 2152398868
...
I/Gecko   (  210): *** AUS:SVC UpdateService:onError - error during background update. error code: -2142568428, status text: No data was received (please try again)

I notice that in the URL '%BUILDID%' is not replaced by the build ID currently install on my phone (20150524162504). If I replace it and insert the URL in a browser, I get '<updates>
</updates>' instead of a '400 Bad Request'. Which seems to be the expected response (No update available).
Flags: needinfo?(nicolas)
Looks like the _ is missing in %BUILD_ID%, caused by copying the example.
Thanks Ton, that's explains it !
(In reply to Naoki Hirata :nhirata (please use needinfo instead of cc) from comment #24)
> Ton, Nicolas, Please read comment 15.
> 
> There's still work to be done to get that fixed, at the same time there's a
> work around.  I need to get in touch with bhearsum about changing the
> 2.2/2.1 flame-kk to flame in the url/mapping.

I'm not sure what the question for me is here, can you clarify?
Nicolas, Ton, thanks for the logcat information.  I am not sure why %BUILDID% doesn't seem to work for your device.  That's a different break than what we're experiencing, one of the questions that I have is could you provide the build information similar to comment 0?  We have a python script that pulls that information here : https://github.com/Mozilla-TWQA/B2G-flash-tool/blob/master/check_versions.py

If you could help provide that information, it may be key in resolving why your update breaks because of %BUILDID%

bhearsum, The question I have is for 2.1 ; https://aus4-admin.mozilla.org/releases#B2G-mozilla-b2g37_v2_2-kitkat-nightly-latest stops at 20150512001201.  https://aus4-admin.mozilla.org/releases#B2G-mozilla-b2g37_v2_2-nightly-latest has flame stopping at 20150313002507 and flame-kk stopping at 20150604002503.  Could we get whatever supplies this xml to balrog to alias flame to flame-kk?  That way we can use https://aus4-admin.mozilla.org/releases#B2G-mozilla-b2g37_v2_2-nightly-latest to set up the rule.


Note: I figured out what I needed to figure out for 2.2.  I had the wrong release listed in the rule.  For rule : B2G : nightly-b2g37, I changed the rule to mapping:B2G-mozilla-b2g37_v2_2-kitkat-nightly-latest device:flame from mapping:B2G-mozilla-b2g37_v2_2-nightly-latest device:flame-kk
The other mapping has an alias for flame-kk to flame so both work.  2.2 should be working provided you don't run into the same issue that Ton and Nicolas may be hitting.
(In reply to Naoki Hirata :nhirata (please use needinfo instead of cc) from comment #30)
> bhearsum, The question I have is for 2.1 ;
> https://aus4-admin.mozilla.org/releases#B2G-mozilla-b2g37_v2_2-kitkat-
> nightly-latest stops at 20150512001201. 
> https://aus4-admin.mozilla.org/releases#B2G-mozilla-b2g37_v2_2-nightly-
> latest has flame stopping at 20150313002507 and flame-kk stopping at
> 20150604002503.  Could we get whatever supplies this xml to balrog to alias
> flame to flame-kk?  That way we can use
> https://aus4-admin.mozilla.org/releases#B2G-mozilla-b2g37_v2_2-nightly-
> latest to set up the rule.

This mapping is at https://github.com/mozilla/build-tools/blob/master/lib/python/release/platforms.py#L37. The left side is the buildbot platform, the right side is the list of update platforms. If "flame" is added to the right hand side it will be aliased to flame-kk. That used to be there, but was removed in bug 1162032 for reasons I don't quite understand.

> Note: I figured out what I needed to figure out for 2.2.  I had the wrong
> release listed in the rule.  For rule : B2G : nightly-b2g37, I changed the
> rule to mapping:B2G-mozilla-b2g37_v2_2-kitkat-nightly-latest device:flame
> from mapping:B2G-mozilla-b2g37_v2_2-nightly-latest device:flame-kk
> The other mapping has an alias for flame-kk to flame so both work.  2.2
> should be working provided you don't run into the same issue that Ton and
> Nicolas may be hitting.

I'm glad you got it figured out. This could be simplified if you want, though. Now that we don't have separate release blobs for kitkat, there's no reason to have rules that specify build target. We know that all devices on any given branch will have data in the same release blob.
Eg: "B2G-mozilla-b2g34_v2_1-nightly-latest" is pointed at by two different rules, one specifying "flame-kk" and one specifying "flame". A single rule that doesn't specify any build target or SDK version would have exactly the same effect as far as flame devices go, and would also mean that other devices (eg nexus-4) would receive updates as well.
Flags: needinfo?(bhearsum)
Attached file bug 1165195 PR (obsolete) —
PR request based on comment 31
Flags: needinfo?(nhirata.bugzilla)
Flags: needinfo?(nhirata.bugzilla)
(In reply to Naoki Hirata :nhirata (please use needinfo instead of cc) from comment #30)
> Nicolas, Ton, thanks for the logcat information.  I am not sure why
> %BUILDID% doesn't seem to work for your device. 

Naoki, thank you for the flame-kk tip, but please don’t waste time on this. As far as I know %BUILD_ID% including underscore is what’s used by the Flame - it’s always been in mine and I’m pretty sure it’s similar in anyone else’s. Could it be you just made a typo when entering the full string example?

I’m also still curious about not getting the "Latest version" message when there (really) is no update available. Should or shouldn’t one get notified?
Ton, you're right.  It was my typo.  I am missing an underscore.

I'm not 100 % sure I follow.  For clarification are you suggesting a feedback saying we're on the latest version?  I think we should file that as a regression bug.  There used to be a message like that ( see bug 815831 and what it was duped to )
Flags: needinfo?(nhirata.bugzilla)
Assignee: nobody → nhirata.bugzilla
(In reply to Naoki Hirata :nhirata (please use needinfo instead of cc) from comment #34)
> 
> I'm not 100 % sure I follow.  For clarification are you suggesting a
> feedback saying we're on the latest version?  I think we should file that as
> a regression bug.  There used to be a message like that ( see bug 815831 and
> what it was duped to )

Exactly, it’s the message returned below the check button. I haven’t got a Flame that long though and never seen it but presume it should display on any device. Need a confirmation fhowever from at least one other Flame owner (I thought there were so many?), as something else may be wrong on my end.
For info: it does return the following:

I/Gecko   (  208): *** AUS:SVC Checker:onLoad - number of updates available: 0
I/Gecko   (  208): UpdatePrompt: Setting gecko.updateStatus: no-updates
Comment on attachment 8616108 [details] [review]
bug 1165195 PR

This looks fine to me, but you'll want to attach a patch here (the github repo is just a mirror of https://hg.mozilla.org/build/tools/), and I'd like Wander to review as well - I consider him the owner for the flame alias'.
Attachment #8616108 - Flags: review?(wcosta)
Attachment #8616108 - Flags: review?(bhearsum)
Attachment #8616108 - Flags: feedback+
Comment on attachment 8616108 [details] [review]
bug 1165195 PR

lgtm, but as bhearsum pointed out, we need a mercurial patch file for build-tools.
Attachment #8616108 - Flags: review?(wcosta)
Attached patch Bug1165195.patchSplinter Review
Switching out git for hg... (makes me sad)
Attachment #8616108 - Attachment is obsolete: true
Attachment #8617615 - Flags: review?(wcosta)
Comment on attachment 8617615 [details] [diff] [review]
Bug1165195.patch

Review of attachment 8617615 [details] [diff] [review]:
-----------------------------------------------------------------

I know that feel, bro. Anyway, lgtm.
Attachment #8617615 - Flags: review?(wcosta) → review+
Um, looks like I don't have access to push to build tools:
abort: HTTP Error 403: ssl required

Can you push the changes for me please, Wander?
Flags: needinfo?(wcosta)
(In reply to Naoki Hirata :nhirata (please use needinfo instead of cc) from comment #40)
> Um, looks like I don't have access to push to build tools:
> abort: HTTP Error 403: ssl required
> 
> Can you push the changes for me please, Wander?

Ok, done.
Flags: needinfo?(wcosta)
Flags: needinfo?(nhirata.bugzilla)
FYI, Flame is still reporting a build even with the patch?  Haven't investigated why...  I changed the rule and then changed it back after realizing the patch either isn't picked up or working the way we want it to...

    "flame": {
      "locales": {
        "en-US": {
          "buildID": "20150313002507",
          "platformVersion": "37.0",
          "displayVersion": "37.0",
          "appVersion": "37.0",
          "completes": [
            {
              "fileUrl": "http://ftp.mozilla.org/pub/mozilla.org/b2g/nightly/2015/03/2015-03-13-00-25-07-mozilla-b2g37_v2_2-flame-kk/b2g-flame-gecko-update.mar",
              "from": "*",
              "hashValue": "a24d99413cd0e6a1ec4accd6af8a2c0a3a20d1faea42eeda0d4f9fcf9a370cdd545f170b324ec3d5a7aaaa849589e697d64847901ac11b395aa742553328afd5",
              "filesize": 73160423
            }
          ]
        }
      }
Flags: needinfo?(wcosta)
Flags: needinfo?(nhirata.bugzilla)
Flags: needinfo?(bhearsum)
So, nhirata_ and me had a chat I it feels like the problem is an old v2.2 "flame" build on B2G-mozilla-b2g37-nightly-latest release preventing the alias to act.

bhearsum, is there a way to delete this specific data?
Flags: needinfo?(wcosta)
(In reply to Wander Lairson Costa [:wcosta] from comment #44)
> So, nhirata_ and me had a chat I it feels like the problem is an old v2.2
> "flame" build on B2G-mozilla-b2g37-nightly-latest release preventing the
> alias to act.
> 
> bhearsum, is there a way to delete this specific data?

Yeah, you should be able to download it via the link on https://aus4-admin.mozilla.org/releases#B2g%20nightly%20latest%20%20b2g37, modify it locally, then upload the new version with the "Update" link. Lemme know how that goes!
Flags: needinfo?(bhearsum)
(In reply to Ben Hearsum [:bhearsum] from comment #45)
> (In reply to Wander Lairson Costa [:wcosta] from comment #44)
> > So, nhirata_ and me had a chat I it feels like the problem is an old v2.2
> > "flame" build on B2G-mozilla-b2g37-nightly-latest release preventing the
> > alias to act.
> > 
> > bhearsum, is there a way to delete this specific data?
> 
> Yeah, you should be able to download it via the link on
> https://aus4-admin.mozilla.org/releases#B2g%20nightly%20latest%20%20b2g37,
> modify it locally, then upload the new version with the "Update" link. Lemme
> know how that goes!

Ok, I had to edit the release, removing the flame entry and add an alias. Also I created specific nightly-b2g37 and nightly-b2g37-test for "flame" Build Target.

Naoki, could you please confirm everything is ok now?
Flags: needinfo?(nhirata.bugzilla)
I believe we're discontinuing 2.1 support for pvt; I think we only need to get 2.2 working from what I understand.

Download is happening with the default URL configuration now.  I think we can resolve this?
Assignee: nhirata.bugzilla → nobody
Flags: needinfo?(nhirata.bugzilla) → needinfo?(wcosta)
Closing it then.
Status: NEW → RESOLVED
Closed: 9 years ago
Flags: needinfo?(wcosta)
Resolution: --- → FIXED
Norry,
Please verify OTA on Flame 2.2 Thanks.
Flags: needinfo?(fan.luo)
Keywords: verifyme
Attached video verified_v2.2.3gp
According to the STR of Comment 0, this bug has been verified as pass on the secondarily latest Flame v2.2.

Actual results: The system update appears in the notification bar, and user can update system successfully.

See attachment: verified_v2.2.3gp
Reproduce rate: 0/6

Device: Flame 2.2 user build(Pass)
Build ID               20150618002507
Gaia Revision          3414b07dc489976bf510fd8042c0af3b1192c160
Gaia Date              2015-06-16 22:04:56
Gecko Revision         https://hg.mozilla.org/releases/mozilla-b2g37_v2_2/rev/a2db74491088
Gecko Version          37.0
Device Name            flame
Firmware(Release)      4.4.2
Firmware(Incremental)  eng.cltbld.20150618.040314
Firmware Date          Thu Jun 18 04:03:25 EDT 2015
Bootloader             L1TC000118D0
QA Whiteboard: [MGSEI-Triage+]
Flags: needinfo?(fan.luo)
Keywords: verifyme
3.0 is still affected. When I try to update I get sent to this url:
https://aus4.mozilla.org/update/3/B2G/41.0a1/20150614233113/flame/en-US/nightly/Boot2Gecko%203.0.0.0-prerelease%20(SDK%2019)/default/default/update.xml?force=1
which does not produce any info.
Is there a way around this? or do I have to flash the latest nightly again (again)?
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: