Bug 148137 - WebKit may keep outdated entry in the disk cache after a reload
Summary: WebKit may keep outdated entry in the disk cache after a reload
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: Page Loading (show other bugs)
Version: Other
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Chris Dumez
URL:
Keywords: InRadar
Depends on:
Blocks:
 
Reported: 2015-08-18 13:50 PDT by Chris Dumez
Modified: 2015-08-20 15:35 PDT (History)
6 users (show)

See Also:


Attachments
Patch (12.05 KB, patch)
2015-08-18 16:43 PDT, Chris Dumez
no flags Details | Formatted Diff | Diff
Patch (12.15 KB, patch)
2015-08-19 09:04 PDT, Chris Dumez
no flags Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Chris Dumez 2015-08-18 13:50:20 PDT
WebKit may keep outdated entry in the disk cache after a reload in the following scenario:
1. We have an entry in the cache
2. The user reloads
3. We get a fresh resource from the network but this one is not cacheable

In this case, we should probably remove the cached entry to make it doesn't get used in the future.
Comment 1 Chris Dumez 2015-08-18 13:50:50 PDT
rdar://problem/22299547
Comment 2 Chris Dumez 2015-08-18 16:43:24 PDT
Created attachment 259320 [details]
Patch
Comment 3 Antti Koivisto 2015-08-19 07:06:18 PDT
Comment on attachment 259320 [details]
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=259320&action=review

r=me

> Source/WebKit2/NetworkProcess/cache/NetworkCacheStorage.cpp:519
>      // For simplicity we also don't reduce m_approximateSize on removals.
>      // The next synchronization will update everything.
>  
> +    removeFromPendingWriteOperations(key);
> +
>      serialBackgroundIOQueue().dispatch([this, key] {

You should also add bloom filter check here. Otherwise every non-cacheable resource generates disk I/O.
Comment 4 Chris Dumez 2015-08-19 09:04:58 PDT
Created attachment 259373 [details]
Patch
Comment 5 WebKit Commit Bot 2015-08-19 09:50:59 PDT
Comment on attachment 259373 [details]
Patch

Clearing flags on attachment: 259373

Committed r188640: <http://trac.webkit.org/changeset/188640>
Comment 6 WebKit Commit Bot 2015-08-19 09:51:06 PDT
All reviewed patches have been landed.  Closing bug.