WebKit Bugzilla
New
Browse
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED INVALID
89450
webkit2 appcache should be implemented in UIProcess
https://bugs.webkit.org/show_bug.cgi?id=89450
Summary
webkit2 appcache should be implemented in UIProcess
Jussi Kukkonen (jku)
Reported
2012-06-19 02:42:48 PDT
the appcache implementation in webkit2 should live in the UI process. Quoting Now the callpath for e.g. deleteAllEntries is: * app calls deleteAllEntries in WebProcess * Call goes through IPC to UIProcess * UIProcess calls deleteAllEntries in all WebProcesses (relaunching if necessary) This is already wasteful and when the method has actual payload, the complexity grows even further. I'll see if I can manage to implement this change...
Attachments
Add attachment
proposed patch, testcase, etc.
Jussi Kukkonen (jku)
Comment 1
2012-06-19 02:44:30 PDT
> the appcache implementation in webkit2 should live in the UI process. Quoting
This was supposed to say: the appcache implementation in webkit2 should live in the UI process. Quoting WebApplicationCacheManagerProxy.ccp: // FIXME (Multi-WebProcess): The application cache shouldn't be stored in the web process.
Jussi Kukkonen (jku)
Comment 2
2012-06-19 02:59:18 PDT
Right after filing I realised why this is implemented as it is: the actual appcache implementation is inside WebCore... I still think the bug is valid, but fixing it might not be trivial.
Jussi Kukkonen (jku)
Comment 3
2012-06-19 05:14:38 PDT
(In reply to
comment #0
)
> Now the callpath for e.g. deleteAllEntries is: > * app calls deleteAllEntries in WebProcess > * Call goes through IPC to UIProcess > * UIProcess calls deleteAllEntries in all WebProcesses (relaunching if necessary)
This is not actually true: when something inside a webprocess wants to do this, it just calls deleteEntries in that particular WebProcess... The path with WebContext->sendToAllProcessesRelaunchingThemIfNecessary() is only called when the UIProcess wants to do this. So not crazy like I thought :) Maybe it makes sense to just create a WebApplicationCacheManager instance in the UIProcess as well? Apparently the SQLite DB doesn't mind (as it's already coping with a WebApplicationCacheManager per webprocess)
Alexey Proskuryakov
Comment 4
2012-06-19 10:53:19 PDT
UIProcess should have as little code as possible, because it is not sandboxed. Moving application cache to that process is certainly not appropriate.
Note
You need to
log in
before you can comment on or make changes to this bug.
Top of Page
Format For Printing
XML
Clone This Bug