New issue
Advanced search Search tips

Issue 836278 link

Starred by 2 users

Issue metadata

Status: Started
Owner:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux
Pri: 3
Type: Bug



Sign in to add a comment

offscreencanvas.convert.to.blob.html flaky on leak bot

Project Member Reported by xidac...@chromium.org, Apr 24 2018

Issue description

Project Member

Comment 1 by bugdroid1@chromium.org, Apr 24 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/dbb5e5884d120ddf02e828c64f29eb05fa5c4c39

commit dbb5e5884d120ddf02e828c64f29eb05fa5c4c39
Author: Xida Chen <xidachen@chromium.org>
Date: Tue Apr 24 16:25:29 2018

Mark offscreencanvas.convert.to.blob.html flaky on leak bot

TBR=thestig@chromium.org, xlai@chromium.org
NOTRY=true

Bug: 836278
Change-Id: I4fba063d1782c9d623a2c57ba8bfaf1fa52abadd
Reviewed-on: https://chromium-review.googlesource.com/1026088
Reviewed-by: Xida Chen <xidachen@chromium.org>
Commit-Queue: Xida Chen <xidachen@chromium.org>
Cr-Commit-Position: refs/heads/master@{#553156}
[modify] https://crrev.com/dbb5e5884d120ddf02e828c64f29eb05fa5c4c39/third_party/WebKit/LayoutTests/LeakExpectations

Components: Blink>Canvas
Labels: OS-Linux
https://ci.chromium.org/buildbot/chromium.webkit/WebKit%20Linux%20Trusty%20Leak/18090 is green, but the test had to be retried.

10:18:40.090 756 worker/4 virtual/threaded/external/wpt/offscreen-canvas/convert-to-blob/offscreencanvas.convert.to.blob.html leaked
10:18:40.090 756 worker/4 virtual/threaded/external/wpt/offscreen-canvas/convert-to-blob/offscreencanvas.convert.to.blob.html failed:
10:18:40.090 756 worker/4  leak detected: ({"numberOfLiveDocuments":[1,2],"numberOfLiveNodes":[4,58],"numberOfLivePausableObjects":[2,3],"numberOfLiveResourceFetchers":[1,2],"numberOfLiveResources":[0,23]})

BTW, some of these tests are marked as Slow in  bug 817091  as well. That bug is marked fixed, but the Slow entries remain. Not sure if that was intended.


Comment 3 by xlai@chromium.org, Apr 24 2018

thestig@: Marking them as slow is intended, because the test must wait for a while when idle task is not available before resorting to the alternative code path of enforcing image encoding.
Project Member

Comment 4 by bugdroid1@chromium.org, May 4 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/eaca580ad3e0a60db10e84d060687d76396ec371

commit eaca580ad3e0a60db10e84d060687d76396ec371
Author: xlai <xlai@chromium.org>
Date: Fri May 04 19:53:19 2018

Correct complete threshold for CanvasAsyncBlobCreator

We were too conservative in setting a larger-than-enough threshold for complete
idle task detection in canvas_async_blob_creator. Based on latest user
statistics, 5 seconds delay for desktop and 9 seconds delay for mobile are good
for 99% users. This long threshold might be contributing to the flakiness on
leak bot of the convertToBlob tests--the delayed task for current thread takes
too long to finish, even longer than the timeout limit of the test, causing a
JS object leak.

Bug: 836278, 787972
Change-Id: I01ced35c4f910b4193adec6f8b26d9a02885a279
Reviewed-on: https://chromium-review.googlesource.com/1042534
Reviewed-by: Justin Novosad <junov@chromium.org>
Commit-Queue: Olivia Lai <xlai@chromium.org>
Cr-Commit-Position: refs/heads/master@{#556160}
[modify] https://crrev.com/eaca580ad3e0a60db10e84d060687d76396ec371/third_party/blink/renderer/core/html/canvas/canvas_async_blob_creator.cc

Comment 5 by xlai@chromium.org, May 7 2018

Components: Tests>Flaky
Owner: nhiroki@chromium.org
My previous attempt CL is not able to fix this Leak; and I am not sure what to do next.

Given that this Leakiness starts from Apr before sheriff found it, I traced the git log and found that nhiroki@'s CL (https://chromium-review.googlesource.com/1002336) which was landed on Apr 9 might be a reason for this bug. 

My reasoning is that the CL modifies parent_frame_task_runner_, which is the task runner for CanvasAsyncBlobCreator on main thread only; and the leakiness only happens on "offscreencanvas.convert.to.blob.html" but not "offscreencanvas.convert.to.blob.w.html". Also, the bug happens to both the virtual test and the non-virtual test, showing that this is nothing about the idle task.

Assigning to nhiroki@ for investigation.
Status: Started (was: Assigned)
Thank you for forwarding. I'll take a look...

Sign in to add a comment