Closed Bug 1029612 Opened 10 years ago Closed 10 years ago

When revisiting a category displaying API-fresh data that had previously displayed packaged data, the "More" button is not included.

Categories

(Marketplace Graveyard :: Consumer Pages, defect, P1)

Avenir
x86_64
Windows 7
defect

Tracking

(blocking-b2g:1.3T+)

RESOLVED FIXED
blocking-b2g 1.3T+

People

(Reporter: eviljeff, Assigned: kngo)

References

Details

(Whiteboard: [qa+])

On first run from a newly flashed/unboxed Tarako device Marketplace appears to load app info from the on-device cache, rather than the internet.  

While this makes sense if the device isn't connected to the internet, etc, if it is then it gives the impression that Marketplace contains very few apps and generally old content.  Not a good first impression.
If you navigate to another page, and return to the homepage, is the homepage refreshed?
Verified with the following steps:

1. Flash to Tarako build 2014-06-23
2. Set up wifi
3. Launch Marketplace
4. Switch to Games tab and scroll to the bottom of the list

Observe: There is no More button

5. Force close Marketplace, relaunch, and again scroll to the bottom of the Games list

Observe: More button is visible
Flags: needinfo?(awilliamson)
Noming as a 1.3T blocker... Chipset provider is hitting this bug *as we speak* for their go / no-go decisions
blocking-b2g: --- → 1.3T?
(In reply to Lisa Brewster [:adora] from comment #2)
> Verified with the following steps:
> 
> 1. Flash to Tarako build 2014-06-23
> 2. Set up wifi
> 3. Launch Marketplace
> 4. Switch to Games tab and scroll to the bottom of the list
> 
> Observe: There is no More button
> 
> 5. Force close Marketplace, relaunch, and again scroll to the bottom of the
> Games list
> 
> Observe: More button is visible

Is force-closing needed?  It should be enough to just switch to another category and back.

The functionality here is working as expected - it's loading the pre-cached data from the package and then refreshing it in the background.  It's not just a matter of being connected to the internet or not - this was designed with an EDGE network in mind and one of the requirements was an "instant" launch - transferring a list of apps takes anywhere from 5-15s.  Adding a more button at the bottom of the pre-loaded content is a good idea, though I'm not sure I'd call it a blocker.
Hi Wil,
Lisa is right, i tried today build. the "more" is not showing up until i kill the Marketplace app and relaunch it. it's not only missing on Games, but also Tools and Lifestyle.

here is uploaded video: http://youtu.be/rVqFzxntFHU

i think we do not need to add more app for the 1st launch (for "instant" purpose), but
can we make the "more" button loaded for the 1st launch and if user tap on it, we "re" connect and bring all other sources in? not sure if this impact the launch time.

BR,
Marvin
Flags: needinfo?(clouserw)
(In reply to Wil Clouser [:clouserw] from comment #4)
> Is force-closing needed?  It should be enough to just switch to another
> category and back.

Switching to a new category (and/or back) doesn't appear to help - each of the 3 categories stays with 10 apps each.  Soft closing doesn't refresh the content either.
Flags: needinfo?(awilliamson)
Using the build currently in Gaia (2014-04-30), I cannot reproduce this in the simulator.

Marvin or Lisa: can one of you fully reproduce the bug as done in the video, then submit your logs and provide the ID here? You can do that by typing ":debug" (no quotes) into the search bar, then hitting "Submit logs".
Flags: needinfo?(clouserw)
I was wrong about that build; there have been newer ones since then, and I can reproduce in the newer ones. Never mind on the need for logs. Will continue investigating.
Ashes for a failing case: ec227
I'm reasonably certain that the preloading and caching is behaving as it should. Using the following steps (which I'm numbering to simplify explanation):

1) First load.
2) You click "Games".
3) We check to see if there is data for that page in localforage. There isn't.
4) We load the data included with the package into localforage.
5) We use that to display the page.
6) We kick off a request to the API to get the latest data.
7) When finished, we use that response to update the data in localforage (this happens asynchronously).
8) You navigate to "Tools".
9) You navigate back to "Games".
10) We check to see if there is data for that page in localforage. There is, because of #5 and possibly #7.
11) We use that to display the page.
    A) If #7 has finished, you should see the new data and a "More" button.
    B) If #7 hasn't finished or failed to finish (network connectivity problems, perhaps), you should still see the packaged data and no "More" button.

The fact that the "More" button is not shown if we're serving packaged data is a feature and not a bug: it could cause continuity problems if the data is sufficiently out of date; an app that used to be on the first page (served from the package) could also be on the second page (served from the API). That is why you do not see it in #5. 

Using the logs I referenced above, I can tell that we are hitting #11A but the "More" button is not appearing. I believe that that is the bug here, and I agree with Caitlin that it is a 1.3T blocker. Kevin worked on pagination for this, so I'm going to rename the bug and throw it his way.

Orthogonal to this bug are Andrew's concerns about stale data, which are inherent to the preloaded data approach we took. It may be a problem for users—I'll let others decide that—but I do not believe that it is a 1.3T blocker. That is to say, "we haven't been able to get new data from the API" is not a blocker, but "we have been able to get new data from the API but aren't letting you see it past the first page" is.
Assignee: nobody → kngo
Status: NEW → ASSIGNED
Priority: -- → P1
Summary: Tarako Marketplace loads stale app info on first run → When revisiting a category displaying API-fresh data that had previously displayed packaged data, the "More" button is not included.
(In reply to Chuck Harmston [:chuck] from comment #10)
> Using the logs I referenced above, I can tell that we are hitting #11A but
> the "More" button is not appearing. I believe that that is the bug here, and
> I agree with Caitlin that it is a 1.3T blocker. Kevin worked on pagination
> for this, so I'm going to rename the bug and throw it his way.

I don't see #11A being hit - even with a sufficiently large amount of time to allow for loading, the data is always the packaged data until a hard restart.  I can tell because one of the apps in Lifestyle changed its name and icon after the packaging.
Andrew: can you get me logs, per instructions in comment 7?
(In reply to Chuck Harmston [:chuck] from comment #12)
> Andrew: can you get me logs, per instructions in comment 7?

92b6d
https://github.com/mozilla/yogafire/commit/17069eff8295f8e2db740ac5dff043029718a4bd
Status: ASSIGNED → RESOLVED
Closed: 10 years ago
Resolution: --- → FIXED
Whiteboard: [qa+]
as soon as this gets QA'd I can make a new PR for gaia.
Flags: needinfo?(krupa.mozbugs)
Updating my phone now and I'll check once that's complete.
Flags: needinfo?(krupa.mozbugs)
I verified that after fresh install of dev, there is no 'More' button on Games but switching between tabs causes the 'More' button to appear.
Status: RESOLVED → VERIFIED
Clouser mentioned that the expected behavior in this case is the More button always shows up and we do a refresh when the user clicks the button.
Status: VERIFIED → REOPENED
Resolution: FIXED → ---
More button will appear. Clicking it won't change scroll position so the apps will appear to refresh. Clicking it again will add more apps like usual.

https://github.com/mozilla/yogafire/commit/ba884e777b20bf852a70aa4c66ae5312f502c1eb
Status: REOPENED → RESOLVED
Closed: 10 years ago10 years ago
Resolution: --- → FIXED
do we need to put a new tarako package and get it uplifted?
or will it be reflected in the marketplace spreadtrum and partners see today.
Flags: needinfo?(kngo)
Wil ^
Flags: needinfo?(clouserw)
We'll merge a new package into gaia, as well as push an update to the Marketplace.  If partners don't reflash with a new gaia they'll be prompted on device that an update is available for the Marketplace.
Flags: needinfo?(clouserw)
The new package is on the Marketplace - anyone with a phone currently should get an update notification.

I've also made a PR for gaia to pull in to the build by default at https://github.com/mozilla-b2g/gaia/pull/21086

The new package adds a more button by default.  When you click it, it replaces all 10 stale results with 20 fresh ones (so you have a second page to scroll to).  Some front page apps may be the same, but this single odd refresh is necessary to get off the packaged data and onto fresh data from our APIs.  Subsequent 'more' presses will work as expected - loading the next 10 apps from the API.

Thanks all.
Flags: needinfo?(kngo)
let's take this for 1.3T for better marketplace load experience
blocking-b2g: 1.3T? → 1.3T+
tim, do you think you can help landing https://github.com/mozilla-b2g/gaia/pull/21086 to 1.3T? Thanks
Flags: needinfo?(timdream)
You need to log in before you can comment on or make changes to this bug.