Issue metadata
Sign in to add a comment
|
requestIdleCallback doesn't fire for 30 seconds |
||||||||||||||||||||||||
Issue descriptionWe ran into this bug during a sync with the V8 team and wikipedia eng. While loading the wikipedia visual editor, they are scheduling work with rIC. Some of the callbacks don't fire anytime soon. See attached screenshots. On other runs we saw this gap can be smaller like 3.5s. But i repro'd a 30s gap twice. Repro: 1. chrome on desktop 2. use keyboard only, no mouse 3. have mouse cursor outside of the chrome application window 4. open new tab 5. paste link: https://en.wikipedia.org/wiki/Barack_Obama?veaction=edit 6. hit enter 7. wait What you would expect is seeing a big blue progress bar starting. With this bug, you will not see a big blue progress bar. Repro'd on Stable and ToT. Both mac and linux.
,
Sep 16 2016
,
Sep 16 2016
cc wikipedia. You should absolutely use the polyfill 100% of the time until this bug in the native impl is fixed.
,
Sep 16 2016
,
Sep 17 2016
Issue 597006 has been merged into this issue.
,
Sep 20 2016
I took a look into this and made a trace (attached). There period where there are pending idle tasks, but not idle periods being scheduled between 8.5s to 29s. The last idle period was a short idle period kicked off by a frame being committed (DidCommitFrameToCompositor). When this finishes we don't get any more frames, but we also don't get a BeginFrameNotExpectedSoon, so the scheduler doesn't start a long idle period. At the 29s mark I moved the mouse in the window, which kicked off some more frames being drawn, and starts some short idle periods, after which we do get a BeginFrameNotExpectedSoon and so get long idle periods as expected. The issue seems to be that the cc scheduler isn't sending the Blink scheduler a BeginFrameNotExpectedSoon when it should be, or that it sends a BeginFrameNotExpectedSoon, but then kicks off another frame for some reason (e.g, layout invalidation) which causes us to stop the long idle period, and doesn't send another BeginFrameNotExpectedSoon after this frame. Brian/Sami - this is way beyond my knowledge of the cc scheduler. Could one of you take a look at this (assigned to Brian right now since Sami is OOO)?
,
Sep 20 2016
Actually attach trace
,
Sep 20 2016
,
Sep 22 2016
Chatted with Ross that this might be a bad interaction between BeginFrameNotExpectedSoon and retro frames.
,
Oct 4 2016
,
Oct 14 2016
|
|||||||||||||||||||||||||
►
Sign in to add a comment |
|||||||||||||||||||||||||
Comment 1 by pfeldman@chromium.org
, Sep 16 2016