New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 591596 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner: ----
Closed: Mar 2016
Cc:
EstimatedDays: ----
NextAction: ----
OS: Linux
Pri: 2
Type: Bug



Sign in to add a comment

Multiple memory leaks in (mostly service worker) layout tests

Project Member Reported by dim...@chromium.org, Mar 3 2016

Issue description

Somewhere in the range of CLs  377573 : 378572
(see all changes in this range here:
https://chromium.googlesource.com/chromium/src/+log/4a2b9f4adb2209dfdea7d09be0c78b9a9b3dda34%5E..55f2d0ef786093c3ea01cfd019903ab20e68661a?pretty=fuller)

the following tests started to leak on 2 bots:
WebKit Linux Leak
WebKit Linux non-Oilpan Leak

The initial occurrence was masked by a crasher that went in before (was later reverted), so it is hard to narrow down the CL range.

Here is a list of failed tests:
Regressions: Unexpected leaks (24)
  fast/workers/worker-document-leak.html [ Leak Failure Leak Leak ]
  http/tests/local/serviceworker/fetch-request-body-file.html [ Leak ]
  http/tests/serviceworker/chromium/clients-openwindow.html [ Leak ]
  http/tests/serviceworker/chromium/usecounter-on-claim.html [ Leak ]
  http/tests/serviceworker/chromium/usecounter-on-reload.html [ Leak ]
  http/tests/serviceworker/claim-not-using-registration.html [ Leak ]
  http/tests/serviceworker/claim-using-registration.html [ Leak ]
  http/tests/serviceworker/client-id.html [ Leak ]
  http/tests/serviceworker/clients-get-client-types.html [ Leak ]
  http/tests/serviceworker/clients-matchall-client-types.html [ Leak ]
  http/tests/serviceworker/controller-on-reload.html [ Leak ]
  http/tests/serviceworker/fetch-event-async-respond-with.html [ Leak ]
  http/tests/serviceworker/fetch-event-network-error.html [ Leak ]
  http/tests/serviceworker/fetch-event-respond-with-argument.html [ Leak ]
  http/tests/serviceworker/fetch-event-respond-with-stops-propagation.html [ Leak ]
  http/tests/serviceworker/multiple-register.html [ Leak ]
  http/tests/serviceworker/ready.html [ Leak ]
  http/tests/serviceworker/register-same-scope-different-script-url.html [ Leak ]
  http/tests/serviceworker/registration-iframe.html [ Leak ]
  http/tests/serviceworker/shared-worker-controlled.html [ Leak ]
  http/tests/serviceworker/skip-waiting-installed.html [ Leak ]
  http/tests/serviceworker/skip-waiting-using-registration.html [ Leak ]
  http/tests/serviceworker/unregister-then-register-new-script.html [ Leak ]
  virtual/sharedarraybuffer/fast/workers/worker-document-leak.html [ Leak ]

This is typical error message:
11:31:34.053 23087 worker/1 http/tests/serviceworker/unregister-then-register-new-script.html leaked
11:31:34.055 23025 [17754/39510] http/tests/serviceworker/unregister-then-register-new-script.html failed unexpectedly (leak detected: ({"numberOfLiveActiveDOMObjects":[2,3],"numberOfLiveDocuments":[1,2],"numberOfLiveNodes":[4,25],"numberOfLiveResources":[0,1]}))
11:31:34.054 23087 worker/1 http/tests/serviceworker/unregister-then-register-new-script.html failed:
11:31:34.054 23087 worker/1  leak detected: ({"numberOfLiveActiveDOMObjects":[2,3],"numberOfLiveDocuments":[1,2],"numberOfLiveNodes":[4,25],"numberOfLiveResources":[0,1]})




 
Speculatively, reverted this: https://codereview.chromium.org/1758163002/
Cc: finnur@chromium.org penghuang@chromium.org
+ more sheriffs.

CL from #1 was not causing it. Relanded it.
Cc: dim...@chromium.org
Owner: ----
Cc: benwells@chromium.org
Looks like Ben is memory sheriff today.
I also speculatively reverted a CL:
https://codereview.chromium.org/1757873002/
Didn't help.
Cc: roc...@chromium.org
The trouble seems to have started in this build:
https://build.chromium.org/p/chromium.webkit/builders/WebKit%20Linux%20Leak/builds/17815

It has three CLs.
1) A Mac-specific change (the leak is on Linux).
2) A CL that I reverted and it didn't help (see comment 6)
3) A Mojo revert CL from Ken. Is it possible that could have caused it?

Ken, mind taking a look?
A lot of the service-worker tests are green now, as of this build.
https://build.chromium.org/p/chromium.webkit/builders/WebKit%20Linux%20non-Oilpan%20Leak/builds/339

Possible reason it went green:

A CL containing a ServiceWorker change was reverted:
https://codereview.chromium.org/1765493002
Remaining failures from last results (on WebKit Linux bot):

http/tests/workers/terminate-during-sync-operation-file.html
http/tests/workers/terminate-during-sync-operation-filesystem.html
fast/workers/worker-document-leak.html
virtual/sharedarraybuffer/fast/workers/worker-document-leak.html
Cc: sigbjo...@opera.com haraken@chromium.org
haraken@/sof: Any good ideas on the remaining failures, which on the face of it seem similar to the one that fixed the others?
I would be surprised if the reverted mojo CL could cause these leaks. I'd expect either no impact on layout test leakage, or very widespread catastrophic impact; nothing in between. :)

In any case the reverted CL in was already relanded > 24 hours ago.
Maybe https://codereview.chromium.org/1750453002/ is worth reverting.

I'm quite sure those four are older leaks than that CL, I've seen them kicking around for at least a week or more. But failed to pinpoint a regression range when I tried to look into it when they first appeared.
e.g., https://build.chromium.org/p/chromium.webkit/builders/WebKit%20Linux%20Leak/builds/17696 has them as leaking which predates that CL.
Paging in details again, https://build.chromium.org/p/chromium.webkit/builders/WebKit%20Linux%20Leak/builds/17691 was the first one.

I couldn't see a clear candidate there but perhaps someone else can?
Something exposed by https://codereview.chromium.org/1641423002/ ?
Seems like he WebKit MSAN and ASAN bots are now green, is this still an issue?
Status: Fixed (was: Untriaged)
Apparently, not an issue any more. As this was a tracking bug anyways, resolving.

Sign in to add a comment