Closed Bug 778855 Opened 7 years ago Closed 7 years ago

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

Categories

(Toolkit :: Safe Browsing, defect)

17 Branch
defect
Not set

Tracking

()

RESOLVED FIXED
Firefox 17
Tracking Status
firefox17 + fixed

People

(Reporter: mbrubeck, Assigned: Dolske)

References

Details

(Keywords: perf, regression, Whiteboard: [ts][leave open])

Attachments

(1 file)

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?
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
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.
Attached patch Patch v.1Splinter Review
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+
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]
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
Closed: 7 years ago
Resolution: --- → FIXED
Target Milestone: --- → Firefox 17
Product: Firefox → Toolkit
You need to log in before you can comment on or make changes to this bug.