Closed Bug 1015386 Opened 10 years ago Closed 10 years ago

[Clock] Implement new startup loading events


(Firefox OS Graveyard :: Gaia::Clock, defect, P2)

Gonk (Firefox OS)


(b2g-v2.0 fixed, b2g-v2.1 fixed)

2.0 S4 (20june)
Tracking Status
b2g-v2.0 --- fixed
b2g-v2.1 --- fixed


(Reporter: Eli, Assigned: mcav)



(Keywords: perf, Whiteboard: [c=automation p= s=2014.06.20.t u=][priority])


(1 file)

+++ This bug was initially created as a clone of Bug #837668 +++

We need to measure when the app is usable by the user. For that we'll need to send an event (the moment is specific to the app) to |window| that the performance test will be able to receive.

The events for implementation are outlined in bug 996038.
FYI. There is already a "startup-path-done" in that one.
See Also: → 837670
Weird, I could not see that bug when I was looking through all the applications. Closing as dup.
Closed: 10 years ago
Resolution: --- → DUPLICATE
Resolution: DUPLICATE → ---
Summary: [Clock] "ready to use" perf measurement → [Clock] change "ready to use" perf measurement to use new consolidated events
Bug 996038 introduces new events outlining the phases of application startup. Each of these 5 events needs to be implemented, so expanding the scope of this bug from just a single event to all 5.
Summary: [Clock] change "ready to use" perf measurement to use new consolidated events → [Clock] Implement new startup loading events
Whiteboard: [c=automation p= s= u=] → [c=automation p= s= u=][priority]
As an FYI, this implementation needs to land in 2.0 as it is important for meeting release performance acceptance criteria.
Assignee: nobody → m
Target Milestone: --- → 2.0 S5 (4july)
This patch includes the events requested. As of this writing I haven't heard about whether PerformanceTestingHelper is still at thing, so there's a "startup-path-done" log in there as well from before. The final three events all fire at once; it is unclear to me that there is any way to meaningfully distinguish between the final three stages for Clock, but suggestions are welcome.
Attachment #8442418 - Flags: review?(hub)
Target Milestone: 2.0 S5 (4july) → 2.0 S4 (20june)
Comment on attachment 8442418 [details] [review]
Link to Github pull-request:

See comments in the Pull request. Essential stuff is missing...
Attachment #8442418 - Flags: review?(hub) → review-
Comment on attachment 8442418 [details] [review]
Link to Github pull-request:

I've updated the patch to address your comments (remove the logging, add the whitelist). Regarding the final three events being fired at the same time, my analysis is as follows:

The clock app's main screen displays three things: An analog clock, a list of alarms, and the tab navigation.

The list of alarm is the final thing to load. The app is not 'visually-complete' until the alarm list has fully loaded. When the alarm list has loaded, the alarm events are immediately interactive; the items' event listeners are initialized at the same time the alarms are added to the DOM. So to me, 'moz-content-interactive' should also fire. Finally, the alarm list is the last thing to load -- so the final 'moz-app-loaded' event should be fired. There is no further background processing for Clock.

Based upon the event descriptions Eli gave in 996038, it looks to me like the three final events must fire together for Clock. If you believe they should be split apart more, I'm open to suggestions.
Attachment #8442418 - Flags: review- → review?(hub)
Comment on attachment 8442418 [details] [review]
Link to Github pull-request:

Looks good.
Attachment #8442418 - Flags: review?(hub) → review+
Closed: 10 years ago10 years ago
Resolution: --- → FIXED
Whiteboard: [c=automation p= s= u=][priority] → [c=automation p= s=2014.06.20 u=][priority]
Whiteboard: [c=automation p= s=2014.06.20 u=][priority] → [c=automation p= s=2014.06.20.t u=][priority]
Marcus, could you please have your patch uplifted to 2.0? See comment 4.
Flags: needinfo?(m)
Flags: needinfo?(m)
Comment on attachment 8442418 [details] [review]
Link to Github pull-request:

Requesting uplift to 2.0 as it is important for meeting our release performance acceptance criteria.

[Feature/regressing bug #]: bug 996038
[User impact if declined]: none
[Describe test coverage new/current, TBPL]: Feature only triggers events for testing, no user-facing features or tests
[Risks and why]: Low, as there are no user-perceived changes
[String/UUID change made/needed]: n/a
Attachment #8442418 - Flags: approval-gaia-v2.0?
Attachment #8442418 - Flags: approval-gaia-v2.0? → approval-gaia-v2.0+
You need to log in before you can comment on or make changes to this bug.