[Webkit-unassigned] [Bug 49008] New: Unbounded memory growth for long lived pages with many requests

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Thu Nov 4 10:44:01 PDT 2010


https://bugs.webkit.org/show_bug.cgi?id=49008

           Summary: Unbounded memory growth for long lived pages with many
                    requests
           Product: WebKit
           Version: 528+ (Nightly build)
          Platform: PC
        OS/Version: Mac OS X 10.5
            Status: UNCONFIRMED
          Severity: Normal
          Priority: P2
         Component: WebCore Misc.
        AssignedTo: webkit-unassigned at lists.webkit.org
        ReportedBy: smagnuson at netflix.com
                CC: abarth at webkit.org


Created an attachment (id=72960)
 --> (https://bugs.webkit.org/attachment.cgi?id=72960&action=review)
Demonstration of unbounded growth

I have a long lived web app that changes images on screen to unique URL's over a period of time. I have found that the memory grows in an unbounded way (probably not considered a leak due to the fact that the pointers/references to the data is not lost only that its growth is unbounded).

I discussed the issue with Adam Barth with respect to the three places I found such behaviour and it was agreed that I would submit a patch for approval that would bound these references to references that remain in the in-memory cache. In this way you can limit the size of your cache and the reference to the URL's or resources will be limited as well. 

I have done this with a new class called SubCache (which is a subset of the current global cache). Anything referenced can be inserted into the SubCache (which is referenced only by string) and will be evicted from the SubCache once the Cache no longer references it. I have identified three spots where this kind of unbounded growth can use the SubCache and will submit the three fixes in addition to the new SubCache as separate patches.

I've attached a small test case that demonstrates the unbounded growth as well, which can be seen by watching the process.

-- 
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.



More information about the webkit-unassigned mailing list