Bug 148137

Summary: WebKit may keep outdated entry in the disk cache after a reload
Product: WebKit Reporter: Chris Dumez <cdumez>
Component: Page LoadingAssignee: Chris Dumez <cdumez>
Status: RESOLVED FIXED    
Severity: Normal CC: ap, barraclough, cgarcia, commit-queue, koivisto, webkit-bug-importer
Priority: P2 Keywords: InRadar
Version: Other   
Hardware: Unspecified   
OS: Unspecified   
See Also: https://bugs.webkit.org/show_bug.cgi?id=148205
Attachments:
Description Flags
Patch
none
Patch none

Chris Dumez
Reported 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.
Attachments
Patch (12.05 KB, patch)
2015-08-18 16:43 PDT, Chris Dumez
no flags
Patch (12.15 KB, patch)
2015-08-19 09:04 PDT, Chris Dumez
no flags
Chris Dumez
Comment 1 2015-08-18 13:50:50 PDT
Chris Dumez
Comment 2 2015-08-18 16:43:24 PDT
Antti Koivisto
Comment 3 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.
Chris Dumez
Comment 4 2015-08-19 09:04:58 PDT
WebKit Commit Bot
Comment 5 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>
WebKit Commit Bot
Comment 6 2015-08-19 09:51:06 PDT
All reviewed patches have been landed. Closing bug.
Note You need to log in before you can comment on or make changes to this bug.