|Summary:||Web Replay: disable page cache during capture/replay|
|Product:||WebKit||Reporter:||BJ Burg <bburg>|
|Component:||Page Loading||Assignee:||BJ Burg <bburg>|
|Severity:||Normal||CC:||ap, joepeck, kling, mhock, psolanki, sam, timothy|
|Version:||528+ (Nightly build)|
|Bug Depends on:||130728|
Description BJ Burg 2014-03-24 08:50:22 PDT
Comment 1 BJ Burg 2014-03-24 16:15:19 PDT
I may end up splitting this patch, as the MemoryCache is a bit tricky to get right. Since the memory cache is a static singleton, simply setting it as disabled through its API is not foolproof because another context using the same WebProcess could un-disable and start filling the cache, altering execution results. Simply returning 0 from CachedResourceLoader::requestResource whenever the associated page is in "replay mode" won't work because we expect the main resource to always be returned from requestResource. An approach I am investigating now is to make a special SessionID for replay; when the MemoryCache encounters a resource in this session, it will neither return a cache hit nor store an fetched resource into the cache.
Comment 3 BJ Burg 2014-03-26 20:39:20 PDT
I will commit this with just the page cache part, so other settings can hook into the common state setup method while I debug problems with the MemoryCache setting.