Last Comment Bug 784920 - Severe periodic jank caused by synchronous reflows in Twitter JavaScript
: Severe periodic jank caused by synchronous reflows in Twitter JavaScript
Product: Core
Classification: Components
Component: Layout (show other bugs)
: 16 Branch
: x86_64 Windows 7
-- normal (vote)
: ---
Assigned To: Robert Sayre
: Jet Villegas (:jet)
Depends on: 785287
  Show dependency treegraph
Reported: 2012-08-22 21:12 PDT by K. Gadd (:kael)
Modified: 2016-07-18 10:39 PDT (History)
18 users (show)
See Also:
Crash Signature:
QA Whiteboard:
Iteration: ---
Points: ---
Has Regression Range: ---
Has STR: ---


Description User image K. Gadd (:kael) 2012-08-22 21:12:46 PDT
URL is a SPS trace.

In the past couple days I've been seeing really horrible periodic jank in Aurora. After seeing the main thread hang for an entire 4 seconds, I switched over to Nightly and turned on SPS. I haven't seen any multisecond pauses, but I am seeing frequent 80+ms pauses caused by what appear to be synchronous reflows. They all seem to be caused by twitter's JS (at least according to SPS's data), which makes sense, because I have twitter pinned in an app tab.

The twitter app tab is just my logged in account on the default page ( without being scrolled down. I think the jank may have been worse in some cases if I was scrolled down, though.

It is unclear whether this got worse because of something that recently landed on Aurora, or if the Twitter guys just broke it.

The jank occurs regardless of what the active tab is.
Comment 1 User image Benoit Girard (:BenWa) 2012-08-23 11:41:11 PDT

The problem is that we're calling getOffsetHeight (filter by getOffsetHeight in the profile) which in this case is blocking the browser for .4 sec. This is called often so it causes periodic jank like described.

Let's see if we can reach twitter, most sites do this without realizing just how expensive this call is.
Comment 2 User image Benoit Girard (:BenWa) 2012-08-23 11:43:36 PDT
(In reply to Benoit Girard (:BenWa) from comment #1)
> The problem is that we're calling
s/we're/twitter is
Comment 3 User image Robert Sayre 2012-08-23 13:33:54 PDT
I will look into fixing Twitter.
Comment 4 User image Robert Sayre 2012-08-23 14:13:04 PDT
This SPS trace is for the twitter embed widget used on third party sites, not We can fix that, but I want to make sure that's the only bug. Are there other traces showing slow scripts from Those would be loaded on itself.
Comment 5 User image K. Gadd (:kael) 2012-08-23 14:22:19 PDT
That's weird. I don't think I have anything open with a twitter widget in it - my fixed set of tabs are just gmail, twitter, ycombinator. 
I guess each jank could have been from me opening a page with the twitter widget in it, though. It's odd also because the jank went away when I installed an addon that suspends background tabs (i.e. twitter and gmail).
Comment 6 User image Benoit Girard (:BenWa) 2012-08-23 20:12:57 PDT
I've got a patch in bug 785287 ready to go that will give us the document URL in the profile for which we trigger a reflow. Inbound is closed but it should hopefully be in the nightly on the 25th.
Comment 7 User image (dormant account) 2012-08-27 14:29:49 PDT managed to catch one of these janks on my faster laptop.
Comment 8 User image Robert Sayre 2012-09-13 08:11:20 PDT
Any updates on this?
Comment 9 User image (dormant account) 2012-09-13 12:36:01 PDT
(In reply to Robert Sayre from comment #8)
> Any updates on this?

see comment 7.
Comment 10 User image Robert Sayre 2012-10-31 08:29:49 PDT
Hey there, last time I visited this bug, I that cleopatra link in comment 7 didn't work.

That profile shows jank that's definitely in the main codebase, rather than the external embedding widget in the URL for this bug. We can work with that.
Comment 11 User image Florian Bender 2012-11-02 12:46:10 PDT
I experienced this on several pages under (opened in multiple tabs), it caused a "stalled script" alert on one tab. Though after restarting (and closing most if not all tabs), I did not experience severe jank anymore, though I did not open a lot of tabs at once and not all pages (articles) on implement the Twitter widget (maybe they even deleted it? – should check that …). 

Fx 17b3
Comment 12 User image Lawrence Mandel [:lmandel] (use needinfo) 2012-11-23 09:47:43 PST
Robert - Any update?
Comment 13 User image David Bolter [:davidb] 2016-07-18 10:31:14 PDT
Benoit, is this bug obsolete now?
Comment 14 User image Benoit Girard (:BenWa) 2016-07-18 10:39:03 PDT
Yes, at this point it would be better to restart a new bug and investigation if there's still a problem. All the data here has rotted.

Note You need to log in before you can comment on or make changes to this bug.