Skip to content
Snippets Groups Projects
  1. Jun 07, 2010
  2. May 04, 2010
  3. Feb 22, 2010
  4. Nov 05, 2009
  5. Oct 12, 2009
  6. Oct 08, 2009
  7. Aug 31, 2009
  8. Aug 28, 2009
  9. Aug 06, 2009
    • rvargas@google.com's avatar
      Disk Cache: Don't depend on the backend being enabled to · 0bcd33ea
      rvargas@google.com authored
      be able to return the key of an open entry.
      
      Whenever a critical corruption is detected by the disk cache,
      the backend disables itself and starts failing all requests
      until it's able to re-create the backing store.
      
      Key's longer than 928 bytes are not stored inside the entry
      itself, so a file object is required to access them. The backend
      will reject any request for a file object after it is disabled,
      so a user's request for the key of an open entry will also
      fail.
      
      Now we keep a pointer to the related file object (if needed) so
      that we don't have to ask the backend for it when the user
      requests the current key.
      
      BUG=9952
      TEST=unittest
      
      
      Review URL: http://codereview.chromium.org/165030
      
      git-svn-id: svn://svn.chromium.org/chrome/trunk/src@22637 0039d316-1c4b-4281-b951-d872f2087c98
      0bcd33ea
  10. Jul 30, 2009
  11. Jul 28, 2009
  12. Jul 09, 2009
    • rvargas@google.com's avatar
      Disk cache: Add explicit support for eviction / deletion · 7d4e3a8b
      rvargas@google.com authored
      of sparse entries.
      
      I started to add code to modify the children_map of the
      parent entry when a child is evicted but that ended up
      being too much trouble for too little gain. We have to be
      prepared to handle the case of not finding a child entry
      because there is no way to make sure that the process
      doesn't go away at any time, so adding a lot of complexity
      just to avoid an extra entry lookup is just not worth it.
      
      On the other hand, potentially freeing up a lot of space when
      a sparse entry is deleted (insetad of just waiting for the
      eviction code to do the cleanup) seems like a good thing.
      
      BUG=12258
      TEST=unittest
      
      Review URL: http://codereview.chromium.org/149306
      
      git-svn-id: svn://svn.chromium.org/chrome/trunk/src@20325 0039d316-1c4b-4281-b951-d872f2087c98
      7d4e3a8b
  13. Jul 07, 2009
  14. Jun 25, 2009
  15. Jun 18, 2009
  16. Jun 04, 2009
  17. May 29, 2009
    • hclam@chromium.org's avatar
      Remove code path that passes a file handle to the renderer · d14c7ac0
      hclam@chromium.org authored
      Since the code now does range request without any caching
      the code path for passing file handle is not used any more.
      
      Changes:
      1. Remove response_data_file in webkit_glue::ResourceResponseHead
      2. Remove response_data_file in net::ResourceInfo
      3. Remove code that passes file handle using IPC
      4. Remove code that passes file hadnle from network layer to ResourceDispatcherHost
      5. Remove MediaResourceHandler
      6. Remove code in disk_cache that expose the file handle
      7. Remove ChromeURLRequestContext::CreateOffTheRecordForMedia() so no more OTR request context for media, in OTR mode simply memory cache is used
      8. Reset cache size for media cache to default
      
      BUG=12249
      BUG=12256
      
      Review URL: http://codereview.chromium.org/113931
      
      git-svn-id: svn://svn.chromium.org/chrome/trunk/src@17227 0039d316-1c4b-4281-b951-d872f2087c98
      d14c7ac0
  18. Apr 09, 2009
  19. Mar 30, 2009
  20. Mar 27, 2009
    • rvargas@google.com's avatar
      Disk Cache: Second pass (and final) to allow multiple instances · 17a8396f
      rvargas@google.com authored
      of BackendImpl.
      
      This cl takes care of all the histograms on the disk cache. Most
      of them have to be splitted in three so that we get separate data
      from different cache types. There are a few places where the complexity
      of splitting the histogram is not worth it so we just keep either all
      data together (if it makes sense), or just ignore data for some types of
      caches.
      
      note: Having multiple versions of a histogram but only one "active" for a
      given client is not the same as having multiple histograms working at the
      same time for different objects.
      
      Review URL: http://codereview.chromium.org/42682
      
      git-svn-id: svn://svn.chromium.org/chrome/trunk/src@12692 0039d316-1c4b-4281-b951-d872f2087c98
      17a8396f
  21. Mar 18, 2009
  22. Mar 13, 2009
    • hclam@chromium.org's avatar
      Highlights of changes: · 363347b6
      hclam@chromium.org authored
      1. Added entry to ResourceResponseHead so that it contains
         either a base::PlatformFile (OS_WIN) or
         base::FileDescriptor (OS_POSIX) for passing the file
         handle from browser to renderer process.
      2. Also added IPC messages for reporting download progress
         and ACK message for it. ResourceLoaderBridge::Peer::OnDownloadProgress
         is added so that the peer is notified of the download
         progress in the renderer process.
      3. Load flag to kick start the resource loading for media
         files. LOAD_MEDIA_RESOURCE is added so that
         ResourceDispatcherHost knows how to use a different
         ResourceHandler for handling media resource request.
      
      Review URL: http://codereview.chromium.org/27168
      
      git-svn-id: svn://svn.chromium.org/chrome/trunk/src@11661 0039d316-1c4b-4281-b951-d872f2087c98
      363347b6
  23. Mar 06, 2009
    • rvargas@google.com's avatar
      New disk cache eviction algorithm (partial implementation). · 90c7aa0f
      rvargas@google.com authored
      Disabled by a #def. When enabled, file format 2.1 is used,
      with a possible update from ver 2.0. If a version with this
      code disabled is run after the upgrade, it will just
      discard the file and go back to 2.0.
      
      We now put some of those extra list to use! Entries are
      separated into various lists depending on how often are
      used, and we keep track of previously evicted entries.
      
      If the new algorithm is not enabled, most of the code just
      goes through a different path (with the old code instead of
      the new one). One notable exception is OpenFollowingEntry,
      used to enumerate the entries on the cache; the code changed
      significantly to support the new version of the "cache
      iterator", but functionally should do the same as the current
      code.
      
      
      Review URL: http://codereview.chromium.org/27345
      
      git-svn-id: svn://svn.chromium.org/chrome/trunk/src@11145 0039d316-1c4b-4281-b951-d872f2087c98
      90c7aa0f
  24. Mar 02, 2009
    • hclam@chromium.org's avatar
      Proposed change to support resource loading for media files. · e7f2964e
      hclam@chromium.org authored
      Highlights of changes:
      - Added methods to disk_cache::Entry:
        - Entry::PrepareTargetAsExternalFile(int index)
          Prepare a stream in an entry to use external file for storage.
        - Entry::GetExternalFile(int index)
          Get the external file backing the stream in the entry.
      - Added a property "CacheType type_" to HttpCache, along with setter and getter.
        There shall be two cache types, COMMON_CACHE and MEDIA_CACHE for distinguishing between different purpose of HttpCache. We have this property to trigger special behavior for caching needs of media files.
      - Added static methods to ChromeURLRequestContext
        - ChromeURLRequestContext::CreateOriginalForMedia
          Create a URLRequestContext for media files for the original profile.
        - ChromeURLRequestContext::CreateOffTheRecordForMedia
          Create a URLRequestContext for media files for off the record profile.
      - Added method to Profile interface.
        - GetRequestContextForMedia
          To get the request context for media files from the context.
      
      Design decissions:
      - Enforce writing to external file by calling methods to Entry rather than construct Backend by a different flag.
        Since we only want a valid and full response to go into an external file rather than redirection response or erroneous response, we should let HttpCache::Transaction to decide when to have an external file for response data. We eliminate a lot of useless external cache files.
      - Adding the CacheType enum and property to HttpCache, we could allow possible (?) future extensions to HttpCache to handle other different caching needs. And there's no need to add change constructors of HttpCache, but maybe we should add a specific constructor to accomodate a media HttpCache?
      - Adding Profile::GetRequestContextForMedia()
        Since we will need to use this new request context in ResourceDispatcherHost, I think the best place to keep it is in the profile. Also we will expose to user that there's a separate cache for media, so it's better to expose it in the Profile level to allow settings to the media cache, e.g. max file size, etc.
      
      Review URL: http://codereview.chromium.org/19747
      
      git-svn-id: svn://svn.chromium.org/chrome/trunk/src@10745 0039d316-1c4b-4281-b951-d872f2087c98
      e7f2964e
  25. Feb 24, 2009
  26. Feb 12, 2009
  27. Feb 10, 2009
  28. Dec 16, 2008
  29. Dec 04, 2008
  30. Dec 02, 2008
  31. Nov 07, 2008
    • rvargas@google.com's avatar
      Switch MessagePumpForIO to use completion ports on Windows. · 17b89148
      rvargas@google.com authored
      Cleanup the separation between MessagePumpForUI and 
      MessagePumpForIO, and convert the latter to use Completion
      Ports instead of MsgWaitForMultipleobjects to sleep
      when idle.
      
      Remove all traces of Windows messages from MessagePumpForIO,
      remove the transitional API of completion port notifications
      and remove WatchObject API.
      
      Modify all callers of RegisterIOHandler so that they are no
      longer using RegisterIOContext, and also handle properly
      the new semantics of completion ports (notifications even when
      the IO completes immediately).
      
      Add a new interface to allow proper cleanup of disk cache (to
      replace code that was waiting for pending APCs from the destructor).
      
      Add a way for the message pump to perform cleanup of abandoned IO.
      
      
      BUG=B/1344358, 3497, 3630
      TESt=unit tests
      R=darin
      
      
      Review URL: http://codereview.chromium.org/8156
      
      git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5021 0039d316-1c4b-4281-b951-d872f2087c98
      17b89148
  32. Oct 27, 2008
  33. Aug 24, 2008
  34. Aug 23, 2008
  35. Aug 19, 2008
Loading