Talos Ts regressions from bug 769960 (SafeBrowsing.jsm refactor)

RESOLVED FIXED in Firefox 17

Status

()

Toolkit
Safe Browsing
RESOLVED FIXED
5 years ago
3 years ago

People

(Reporter: mbrubeck, Assigned: Dolske)

Tracking

({perf, regression})

17 Branch
Firefox 17
perf, regression
Points:
---

Firefox Tracking Flags

(firefox17+ fixed)

Details

(Whiteboard: [ts][leave open])

Attachments

(1 attachment)

(Reporter)

Description

5 years ago
It looks like bug 769960 regressed Ts Paint and Ts MAX/MED Dirty Profile benchmarks by 3% to 6% on all desktop platforms, and also made the results noisier, e.g.:
http://graphs.mozilla.org/graph.html#tests=[[83,63,21]]&sel=1343376589000,1343549389000&displayrange=7&datatype=running

Did we accidentally move some code to run before startup that used to run after startup?
tracking-firefox17: ? → +
(Assignee)

Comment 1

5 years ago
Hmm, yeah, this did move some code to run earlier than it did before.

The pre-refactoring code (take a deep breath) used a <script> in browser.xul, which added a |load| event listener, which in turn added a 2 second setTimeout, which in turn finally did the actual init. See (now deleted) sb-loader.js.

The refactored code simply init()s in gBrowserInit._delayedStartup(). Which instead of 2 seconds after |onload|, is 1 event-loop spin. Some of this regression / noise may be due to us writing to a DB to add the Mozilla test entries:

http://mxr.mozilla.org/mozilla-central/source/browser/components/safebrowsing/SafeBrowsing.jsm#180

Lots of (existing) clownshoes in this code. Sigh.

Let me look at removing addMozEntries(). Failing that, we can go back to cheating by initializing after another 2 seconds.
QA Contact: dolske
Assuming that dolske meant to take this!
Assignee: nobody → dolske
QA Contact: dolske
(Assignee)

Comment 3

5 years ago
Filed bug 779008 for the DB clownshoes. It's existing, needs a bit of thought, and it just one of many undesirable things with Safe Browsing.

So I'm just going to fix this regression by bumping the init() to occur later, as the original code did.
(Assignee)

Comment 4

5 years ago
Created attachment 647375 [details] [diff] [review]
Patch v.1

This restores init timing to what it was pre-refactor.
Attachment #647375 - Flags: review?(gavin.sharp)
Comment on attachment 647375 [details] [diff] [review]
Patch v.1

gross
Attachment #647375 - Flags: review?(gavin.sharp) → review+
(Assignee)

Comment 6

5 years ago
http://hg.mozilla.org/integration/mozilla-inbound/rev/19c4aff72747

We'll probably want to watch numbers for a bit after landing to verify that it's indeed fixed.
Whiteboard: [ts] → [ts][leave open]

Comment 7

5 years ago
https://hg.mozilla.org/mozilla-central/rev/19c4aff72747
(Assignee)

Comment 8

5 years ago
http://graphs.mozilla.org/graph.html#tests=[[83,63,21]]&sel=1343354155024.9382,1343765668427&displayrange=7&datatype=running

Looks like this fixed it. Noise is gone, and Ts is actually a little lower than it was before!
Status: NEW → RESOLVED
Last Resolved: 5 years ago
Resolution: --- → FIXED

Updated

5 years ago
status-firefox17: --- → fixed
Target Milestone: --- → Firefox 17
Component: Phishing Protection → Phishing Protection
Product: Firefox → Toolkit
You need to log in before you can comment on or make changes to this bug.