Bug 24877 - REGRESSION: Leaks from ApplicationCache code running http/tests/appcache/non-html.xhtml
Summary: REGRESSION: Leaks from ApplicationCache code running http/tests/appcache/non-...
Status: RESOLVED WORKSFORME
Alias: None
Product: WebKit
Classification: Unclassified
Component: New Bugs (show other bugs)
Version: 528+ (Nightly build)
Hardware: Mac OS X 10.5
: P1 Normal
Assignee: Nobody
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2009-03-26 22:43 PDT by Eric Seidel (no email)
Modified: 2009-08-21 17:01 PDT (History)
3 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Eric Seidel (no email) 2009-03-26 22:43:05 PDT
http://build.webkit.org/results/trunk-mac-intel-debug/6379/DumpRenderTree-leaks.txt

ApplicationCache, ApplicationCacheGroup, ApplicationCacheStorage

Might be from the marking changes today, but I kinda doubt it.
Comment 1 Eric Seidel (no email) 2009-03-26 23:05:01 PDT
Might be related to this crash seen running the storage tests:
ASSERTION FAILED: isMainThread() || m_emptyString->hasOneRef()
(/Stuff/Projects/WebKit/WebCore/platform/ThreadGlobalData.cpp:97 WebCore::ThreadGlobalData::~ThreadGlobalData())
Comment 2 Eric Seidel (no email) 2009-03-27 00:05:07 PDT
bdash notes that these occurred at least as early as last thursday:
http://build.webkit.org/builders/trunk-mac-intel-debug/builds/6300
Comment 3 Eric Seidel (no email) 2009-03-27 00:08:16 PDT
http://build.webkit.org/builders/trunk-mac-intel-debug/builds/6296
Seems to be the first build to show the regression.
Comment 4 Eric Seidel (no email) 2009-03-27 00:20:09 PDT
It's possible these could have started appearing around a bot upgrade, since earlier leaks, like:
http://build.webkit.org/results/trunk-mac-intel-debug/6285/DumpRenderTree-leaks.txt
show at least a loader-related leak.  A bot upgrade could have changed CFNetwork or the leaks tool.

The changes in 6296 don't look very related:
http://build.webkit.org/builders/trunk-mac-intel-debug/builds/6296
Comment 5 Eric Seidel (no email) 2009-03-27 00:31:00 PDT
Found a culprit:

running http/tests/appcache/non-html.xhtml ->         http/tests/appcache/non-html.xhtml -> succeeded
 ? checking for leaks in DumpRenderTree
 - no leaks found
LEAK: 27 WebCoreNode
LEAK: 1 CachedResource

run-webkit-tests --leaks http/tests/appcache/non-html.xhtml

will reproduce at least one of the sets of leaks.
Comment 6 Eric Seidel (no email) 2009-03-27 00:35:51 PDT
I've verified that http/tests/appcache/non-html.xhtml is the *only* leaking ApplicationCache test.
Comment 7 Eric Seidel (no email) 2009-03-27 00:39:59 PDT
Actually, I"m wrong.  The case I reproduced with http/tests/appcache/non-html.xhtml only spits out LEAK message, not stacks from the leaks tool.
Comment 8 Eric Seidel (no email) 2009-03-27 00:43:02 PDT
http/tests/appcache/non-html.xhtml was added as part of:
http://trac.webkit.org/changeset/40401
I've not yet tested that revision to see if it shows leaks then.
Comment 9 Alexey Proskuryakov 2009-08-21 16:08:14 PDT
The LEAK message is red herring - the CachedResource isn't deleted because DRT doesn't destroy its last document.

Looking at leaks for current ToT, I only see a bunch coming from CFNetwork (under XMLHttpRequest).

There are certainly leaks on appcache tests, but it's not clear whether they are WebKit or CFNetwork issue. I used to think that they were the latter, but bdash found some evidence to the contrary. I'm investigating that now, but it seems to be a separate issue.
Comment 10 Eric Seidel (no email) 2009-08-21 16:19:06 PDT
I don't wish to argue about the closing of the bug.  Just with this statement:

"The LEAK message is red herring - the CachedResource isn't deleted because DRT
doesn't destroy its last document."

Do we still see LEAK messages from this code?  If so, we need to either fix the LEAK messages to not print, fix the leaks, or fix DRT to not trigger them. :)  Leak counts are useless if not expected to be 0.
Comment 11 Alexey Proskuryakov 2009-08-21 17:01:10 PDT
Yes, improving DRT would be good - the LEAK messages are still there. In other news, I'm preparing a patch that fixes all leaks (not LEAKS) on appcache tests for me.