Summary: | DatabaseProcess doesn't handle WebProcesses going away uncleanly | ||||||||
---|---|---|---|---|---|---|---|---|---|
Product: | WebKit | Reporter: | Alex Christensen <achristensen> | ||||||
Component: | New Bugs | Assignee: | Alex Christensen <achristensen> | ||||||
Status: | RESOLVED FIXED | ||||||||
Severity: | Normal | CC: | alecflett, ap, beidson, commit-queue, jsbell | ||||||
Priority: | P2 | ||||||||
Version: | WebKit Nightly Build | ||||||||
Hardware: | Unspecified | ||||||||
OS: | Unspecified | ||||||||
Bug Depends on: | |||||||||
Bug Blocks: | 149117 | ||||||||
Attachments: |
|
Description
Alex Christensen
2016-06-17 17:37:35 PDT
Created attachment 281599 [details]
Patch
Comment on attachment 281599 [details]
Patch
r- because what is this
DatabaseProcess doesn't handle WebProcesses going away uncleanly This code: void DatabaseToWebProcessConnection::didClose(IPC::Connection&) { #if ENABLE(INDEXED_DATABASE) // FIXME: (Modern IDB) The WebProcess has disconnected, close all of the connections associated with it #endif } Yikes! This test case exacerbates the issue because it opens a new database connection each time through the test. When a tab is closed in Safari, sometimes we shut down a few of those connections, but most just disappear without a trace, forever clogging the database process. As is the common thread lately, I have a straightforward fix, and writing a test will take awhile. Created attachment 281880 [details]
Patch
|