This is causing WebKit errors when database interaction occurs after the process has been suspended.
<rdar://problem/58800397>
The correct radar is <rdar://problem/58713379>
Created attachment 388440 [details] Patch
Created attachment 388496 [details] Patch
Bots were green but this was actually causing flaky API test failures. This patch should fix them.
I suggest we just queue a task to hang the background queue, like we do in StorageManagerSet::suspend(). I believe this would make things a lot simpler.
Created attachment 388587 [details] Patch
Comment on attachment 388587 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=388587&action=review > Source/WebKit/NetworkProcess/Classifier/WebResourceLoadStatisticsStore.cpp:1167 > + postTask([this, protectedThis = makeRef(*this), completionHandler = completionHandlerCaller.release()] () mutable { protectedThis is not needed, postTask() does this for you.
(In reply to Chris Dumez from comment #8) > Comment on attachment 388587 [details] > Patch > > View in context: > https://bugs.webkit.org/attachment.cgi?id=388587&action=review > > > Source/WebKit/NetworkProcess/Classifier/WebResourceLoadStatisticsStore.cpp:1167 > > + postTask([this, protectedThis = makeRef(*this), completionHandler = completionHandlerCaller.release()] () mutable { > > protectedThis is not needed, postTask() does this for you. Got it, I'll remove before landing. Thanks!
Created attachment 388589 [details] Patch for landing
This is actually: <rdar://problem/58713379>
Comment on attachment 388589 [details] Patch for landing Clearing flags on attachment: 388589 Committed r255039: <https://trac.webkit.org/changeset/255039>
All reviewed patches have been landed. Closing bug.