Changeset 228230 in webkit
- Timestamp:
- Feb 7, 2018 10:51:21 AM (6 years ago)
- Location:
- trunk
- Files:
-
- 12 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/LayoutTests/ChangeLog
r228228 r228230 1 2018-02-07 Chris Dumez <cdumez@apple.com> 2 3 IndexedDB in service workers is using a memory backed store 4 https://bugs.webkit.org/show_bug.cgi?id=182574 5 <rdar://problem/37316205> 6 7 Reviewed by Youenn Fablet. 8 9 Unskip test that no longer times out. 10 11 * TestExpectations: 12 1 13 2018-02-07 Ms2ger <Ms2ger@igalia.com> 2 14 -
trunk/LayoutTests/TestExpectations
r228199 r228230 160 160 imported/w3c/web-platform-tests/service-workers/service-worker/client-navigate.https.html [ Skip ] 161 161 imported/w3c/web-platform-tests/service-workers/service-worker/clients-matchall-include-uncontrolled.https.html [ Skip ] 162 imported/w3c/web-platform-tests/service-workers/service-worker/indexeddb.https.html [ Skip ]163 162 imported/w3c/web-platform-tests/service-workers/service-worker/appcache-ordering-main.https.html [ Skip ] 164 163 -
trunk/LayoutTests/imported/w3c/ChangeLog
r228113 r228230 1 2018-02-07 Chris Dumez <cdumez@apple.com> 2 3 IndexedDB in service workers is using a memory backed store 4 https://bugs.webkit.org/show_bug.cgi?id=182574 5 <rdar://problem/37316205> 6 7 Reviewed by Youenn Fablet. 8 9 Rebaseline WPT test that is now passing. 10 11 * web-platform-tests/service-workers/service-worker/indexeddb.https-expected.txt: 12 1 13 2018-02-05 Chris Dumez <cdumez@apple.com> 2 14 -
trunk/LayoutTests/imported/w3c/web-platform-tests/service-workers/service-worker/indexeddb.https-expected.txt
r227543 r228230 1 CONSOLE MESSAGE: line 14: NotFoundError: Failed to execute 'transaction' on 'IDBDatabase': One of the specified object stores was not found.2 1 3 Harness Error (FAIL), message = NotFoundError: Failed to execute 'transaction' on 'IDBDatabase': One of the specified object stores was not found. 2 PASS Verify Indexed DB operation in a Service Worker 3 PASS clean up: registration 4 PASS clean up: database 4 5 5 TIMEOUT Verify Indexed DB operation in a Service Worker Test timed out6 NOTRUN clean up: registration7 NOTRUN clean up: database8 -
trunk/Source/WebKit/ChangeLog
r228227 r228230 1 2018-02-07 Chris Dumez <cdumez@apple.com> 2 3 IndexedDB in service workers is using a memory backed store 4 https://bugs.webkit.org/show_bug.cgi?id=182574 5 <rdar://problem/37316205> 6 7 Reviewed by Youenn Fablet. 8 9 Make sure we pass a proper WebDatabaseProvider to the ServiceWorkerProcess via 10 PageConfiguration. Otherwise, we end up using the default EmptyDatabaseProvider 11 which uses an InProcessIDBServer and a memory-backed store for IndexedDB. 12 13 * UIProcess/ServiceWorkerProcessProxy.cpp: 14 (WebKit::ServiceWorkerProcessProxy::start): 15 * UIProcess/WebProcessPool.h: 16 * WebProcess/Storage/WebSWContextManagerConnection.cpp: 17 (WebKit::WebSWContextManagerConnection::WebSWContextManagerConnection): 18 (WebKit::WebSWContextManagerConnection::installServiceWorker): 19 * WebProcess/Storage/WebSWContextManagerConnection.h: 20 * WebProcess/WebProcess.cpp: 21 (WebKit::WebProcess::establishWorkerContextConnectionToStorageProcess): 22 * WebProcess/WebProcess.h: 23 * WebProcess/WebProcess.messages.in: 24 1 25 2018-02-07 Michael Catanzaro <mcatanzaro@igalia.com> 2 26 -
trunk/Source/WebKit/UIProcess/ServiceWorkerProcessProxy.cpp
r227161 r228230 29 29 #include "AuthenticationChallengeProxy.h" 30 30 #include "WebCredential.h" 31 #include "WebPageGroup.h" 31 32 #include "WebPreferencesStore.h" 32 33 #include "WebProcessMessages.h" … … 70 71 void ServiceWorkerProcessProxy::start(const WebPreferencesStore& store, std::optional<PAL::SessionID> initialSessionID) 71 72 { 72 send(Messages::WebProcess::EstablishWorkerContextConnectionToStorageProcess { m_serviceWorkerPageID, store, initialSessionID.value_or(PAL::SessionID::defaultSessionID()) }, 0);73 send(Messages::WebProcess::EstablishWorkerContextConnectionToStorageProcess { processPool().defaultPageGroup().pageGroupID(), m_serviceWorkerPageID, store, initialSessionID.value_or(PAL::SessionID::defaultSessionID()) }, 0); 73 74 } 74 75 -
trunk/Source/WebKit/UIProcess/WebProcessPool.h
r228188 r228230 206 206 ProcessID storageProcessIdentifier(); 207 207 208 WebPageGroup& defaultPageGroup() { return m_defaultPageGroup.get(); } 209 208 210 void setAlwaysUsesComplexTextCodePath(bool); 209 211 void setShouldUseFontSmoothing(bool); -
trunk/Source/WebKit/WebProcess/Storage/WebSWContextManagerConnection.cpp
r227425 r228230 35 35 #include "WebCacheStorageProvider.h" 36 36 #include "WebCoreArgumentCoders.h" 37 #include "WebDatabaseProvider.h" 37 38 #include "WebDocumentLoader.h" 38 39 #include "WebPreferencesKeys.h" … … 102 103 }; 103 104 104 WebSWContextManagerConnection::WebSWContextManagerConnection(Ref<IPC::Connection>&& connection, uint64_t page ID, const WebPreferencesStore& store)105 WebSWContextManagerConnection::WebSWContextManagerConnection(Ref<IPC::Connection>&& connection, uint64_t pageGroupID, uint64_t pageID, const WebPreferencesStore& store) 105 106 : m_connectionToStorageProcess(WTFMove(connection)) 107 , m_pageGroupID(pageGroupID) 106 108 , m_pageID(pageID) 107 109 , m_userAgent(standardUserAgentWithApplicationName({ })) … … 134 136 WebProcess::singleton().cacheStorageProvider() 135 137 }; 138 136 139 fillWithEmptyClients(pageConfiguration); 140 141 #if ENABLE(INDEXED_DATABASE) 142 pageConfiguration.databaseProvider = WebDatabaseProvider::getOrCreate(m_pageGroupID); 143 #endif 137 144 138 145 // FIXME: This method should be moved directly to WebCore::SWContextManager::Connection -
trunk/Source/WebKit/WebProcess/Storage/WebSWContextManagerConnection.h
r227425 r228230 52 52 class WebSWContextManagerConnection final : public WebCore::SWContextManager::Connection, public IPC::MessageReceiver { 53 53 public: 54 WebSWContextManagerConnection(Ref<IPC::Connection>&&, uint64_t page ID, const WebPreferencesStore&);54 WebSWContextManagerConnection(Ref<IPC::Connection>&&, uint64_t pageGroupID, uint64_t pageID, const WebPreferencesStore&); 55 55 ~WebSWContextManagerConnection(); 56 56 … … 90 90 91 91 Ref<IPC::Connection> m_connectionToStorageProcess; 92 uint64_t m_pageGroupID; 92 93 uint64_t m_pageID { 0 }; 93 94 uint64_t m_previousServiceWorkerID { 0 }; -
trunk/Source/WebKit/WebProcess/WebProcess.cpp
r228188 r228230 1654 1654 1655 1655 #if ENABLE(SERVICE_WORKER) 1656 void WebProcess::establishWorkerContextConnectionToStorageProcess(uint64_t page ID, const WebPreferencesStore& store, PAL::SessionID initialSessionID)1656 void WebProcess::establishWorkerContextConnectionToStorageProcess(uint64_t pageGroupID, uint64_t pageID, const WebPreferencesStore& store, PAL::SessionID initialSessionID) 1657 1657 { 1658 1658 // We are in the Service Worker context process and the call below establishes our connection to the Storage Process … … 1660 1660 // WebToStorageProcessConnection for synchronization purposes. 1661 1661 auto& ipcConnection = ensureWebToStorageProcessConnection(initialSessionID).connection(); 1662 SWContextManager::singleton().setConnection(std::make_unique<WebSWContextManagerConnection>(ipcConnection, page ID, store));1662 SWContextManager::singleton().setConnection(std::make_unique<WebSWContextManagerConnection>(ipcConnection, pageGroupID, pageID, store)); 1663 1663 } 1664 1664 -
trunk/Source/WebKit/WebProcess/WebProcess.h
r227709 r228230 312 312 #endif 313 313 #if ENABLE(SERVICE_WORKER) 314 void establishWorkerContextConnectionToStorageProcess(uint64_t page ID, const WebPreferencesStore&, PAL::SessionID);314 void establishWorkerContextConnectionToStorageProcess(uint64_t pageGroupID, uint64_t pageID, const WebPreferencesStore&, PAL::SessionID); 315 315 void registerServiceWorkerClients(PAL::SessionID); 316 316 #endif -
trunk/Source/WebKit/WebProcess/WebProcess.messages.in
r227566 r228230 117 117 118 118 #if ENABLE(SERVICE_WORKER) 119 EstablishWorkerContextConnectionToStorageProcess(uint64_t page ID, struct WebKit::WebPreferencesStore store, PAL::SessionID initialSessionID)119 EstablishWorkerContextConnectionToStorageProcess(uint64_t pageGroupID, uint64_t pageID, struct WebKit::WebPreferencesStore store, PAL::SessionID initialSessionID) 120 120 RegisterServiceWorkerClients(PAL::SessionID sessionID) 121 121 #endif
Note: See TracChangeset
for help on using the changeset viewer.