New issue
Advanced search Search tips

Issue 627484 link

Starred by 3 users

Issue metadata

Status: Fixed
Owner:
Closed: Jan 2017
Components:
EstimatedDays: ----
NextAction: ----
OS: All
Pri: 3
Type: Feature



Sign in to add a comment

Convert Indexed DB from Chrome legacy IPC to Mojo

Project Member Reported by cmumford@chromium.org, Jul 12 2016

Issue description

Move all Indexed DB IPC from Chromium legacy IPC to Mojo.
 
Project Member

Comment 1 by bugdroid1@chromium.org, Jul 22 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/fbd8d172f1497641c4d6c9c56025d18e7d50eb00

commit fbd8d172f1497641c4d6c9c56025d18e7d50eb00
Author: cmumford <cmumford@chromium.org>
Date: Fri Jul 22 18:25:01 2016

IndexedDB: Saving data loss status in IndexedDBPendingConnection.

Database data loss is a non-standard extension to IDBVersionChangeEvent
(https://www.w3.org/Bugs/Public/show_bug.cgi?id=22370). This state only
needs to be persisted as part of the database open. So moving this value
from IndexedDBCallbacks (used for any IDB call) to
IndexedDBPendingConnection (only used during database open).

BUG= 627484 

Review-Url: https://codereview.chromium.org/2140193002
Cr-Commit-Position: refs/heads/master@{#407208}

[modify] https://crrev.com/fbd8d172f1497641c4d6c9c56025d18e7d50eb00/content/browser/indexed_db/indexed_db_callbacks.cc
[modify] https://crrev.com/fbd8d172f1497641c4d6c9c56025d18e7d50eb00/content/browser/indexed_db/indexed_db_callbacks.h
[modify] https://crrev.com/fbd8d172f1497641c4d6c9c56025d18e7d50eb00/content/browser/indexed_db/indexed_db_cleanup_on_io_error_unittest.cc
[add] https://crrev.com/fbd8d172f1497641c4d6c9c56025d18e7d50eb00/content/browser/indexed_db/indexed_db_data_loss_info.h
[modify] https://crrev.com/fbd8d172f1497641c4d6c9c56025d18e7d50eb00/content/browser/indexed_db/indexed_db_database.cc
[modify] https://crrev.com/fbd8d172f1497641c4d6c9c56025d18e7d50eb00/content/browser/indexed_db/indexed_db_database.h
[modify] https://crrev.com/fbd8d172f1497641c4d6c9c56025d18e7d50eb00/content/browser/indexed_db/indexed_db_database_unittest.cc
[modify] https://crrev.com/fbd8d172f1497641c4d6c9c56025d18e7d50eb00/content/browser/indexed_db/indexed_db_dispatcher_host.cc
[modify] https://crrev.com/fbd8d172f1497641c4d6c9c56025d18e7d50eb00/content/browser/indexed_db/indexed_db_factory.h
[modify] https://crrev.com/fbd8d172f1497641c4d6c9c56025d18e7d50eb00/content/browser/indexed_db/indexed_db_factory_impl.cc
[modify] https://crrev.com/fbd8d172f1497641c4d6c9c56025d18e7d50eb00/content/browser/indexed_db/indexed_db_factory_impl.h
[modify] https://crrev.com/fbd8d172f1497641c4d6c9c56025d18e7d50eb00/content/browser/indexed_db/indexed_db_factory_unittest.cc
[modify] https://crrev.com/fbd8d172f1497641c4d6c9c56025d18e7d50eb00/content/browser/indexed_db/indexed_db_pending_connection.h
[modify] https://crrev.com/fbd8d172f1497641c4d6c9c56025d18e7d50eb00/content/browser/indexed_db/indexed_db_unittest.cc
[modify] https://crrev.com/fbd8d172f1497641c4d6c9c56025d18e7d50eb00/content/browser/indexed_db/mock_indexed_db_factory.h
[modify] https://crrev.com/fbd8d172f1497641c4d6c9c56025d18e7d50eb00/content/content_browser.gypi

Project Member

Comment 2 by bugdroid1@chromium.org, Aug 17 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/95032d5b02ec93895c40dfbea1eea40d0aff45e9

commit 95032d5b02ec93895c40dfbea1eea40d0aff45e9
Author: cmumford <cmumford@chromium.org>
Date: Wed Aug 17 18:11:52 2016

[IndexedDB]: Passing URLRequestContextGetter.

Indexed DB was passing net::URLRequestContext as it was needed for Blob
writing in WriteBlobToFileOnIOThread. This switches to passing the
*Getter which facilitates the move to Mojo where initialization is done
on the Indexed DB thread.

BUG= 627484 

Review-Url: https://codereview.chromium.org/2172863002
Cr-Commit-Position: refs/heads/master@{#412585}

[modify] https://crrev.com/95032d5b02ec93895c40dfbea1eea40d0aff45e9/content/browser/indexed_db/indexed_db_backing_store.cc
[modify] https://crrev.com/95032d5b02ec93895c40dfbea1eea40d0aff45e9/content/browser/indexed_db/indexed_db_backing_store.h
[modify] https://crrev.com/95032d5b02ec93895c40dfbea1eea40d0aff45e9/content/browser/indexed_db/indexed_db_backing_store_unittest.cc
[modify] https://crrev.com/95032d5b02ec93895c40dfbea1eea40d0aff45e9/content/browser/indexed_db/indexed_db_cleanup_on_io_error_unittest.cc
[modify] https://crrev.com/95032d5b02ec93895c40dfbea1eea40d0aff45e9/content/browser/indexed_db/indexed_db_dispatcher_host.cc
[modify] https://crrev.com/95032d5b02ec93895c40dfbea1eea40d0aff45e9/content/browser/indexed_db/indexed_db_dispatcher_host.h
[modify] https://crrev.com/95032d5b02ec93895c40dfbea1eea40d0aff45e9/content/browser/indexed_db/indexed_db_factory.h
[modify] https://crrev.com/95032d5b02ec93895c40dfbea1eea40d0aff45e9/content/browser/indexed_db/indexed_db_factory_impl.cc
[modify] https://crrev.com/95032d5b02ec93895c40dfbea1eea40d0aff45e9/content/browser/indexed_db/indexed_db_factory_impl.h
[modify] https://crrev.com/95032d5b02ec93895c40dfbea1eea40d0aff45e9/content/browser/indexed_db/indexed_db_factory_unittest.cc
[modify] https://crrev.com/95032d5b02ec93895c40dfbea1eea40d0aff45e9/content/browser/indexed_db/indexed_db_fake_backing_store.cc
[modify] https://crrev.com/95032d5b02ec93895c40dfbea1eea40d0aff45e9/content/browser/indexed_db/mock_indexed_db_factory.h

Project Member

Comment 3 by bugdroid1@chromium.org, Oct 20 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/627e7f73d47910f4255031de55075e2a04b222f6

commit 627e7f73d47910f4255031de55075e2a04b222f6
Author: reillyg <reillyg@chromium.org>
Date: Thu Oct 20 05:12:43 2016

Port messages sent by WebIDBFactoryImpl to Mojo.

This is the first of a series of patches that convert the IPC messages
sent by WebIDBFactoryImpl, WebIDBDatabaseImpl and WebIDBCursorImpl to
Mojo messages.

Once all of the IPC sent by IndexedDB and Blob storage are converted to
Mojo they can be moved off of channel-associated interfaces and more
agressive removal of unnecessary layers of abstraction (including
removal of all of the manual thread hopping I added) can be done.

BUG= 627484 

Review-Url: https://chromiumcodereview.appspot.com/2370643004
Cr-Commit-Position: refs/heads/master@{#426412}

[modify] https://crrev.com/627e7f73d47910f4255031de55075e2a04b222f6/content/browser/BUILD.gn
[modify] https://crrev.com/627e7f73d47910f4255031de55075e2a04b222f6/content/browser/indexed_db/indexed_db_backing_store.cc
[modify] https://crrev.com/627e7f73d47910f4255031de55075e2a04b222f6/content/browser/indexed_db/indexed_db_backing_store.h
[modify] https://crrev.com/627e7f73d47910f4255031de55075e2a04b222f6/content/browser/indexed_db/indexed_db_callbacks.cc
[modify] https://crrev.com/627e7f73d47910f4255031de55075e2a04b222f6/content/browser/indexed_db/indexed_db_callbacks.h
[modify] https://crrev.com/627e7f73d47910f4255031de55075e2a04b222f6/content/browser/indexed_db/indexed_db_database.h
[modify] https://crrev.com/627e7f73d47910f4255031de55075e2a04b222f6/content/browser/indexed_db/indexed_db_database_callbacks.cc
[modify] https://crrev.com/627e7f73d47910f4255031de55075e2a04b222f6/content/browser/indexed_db/indexed_db_database_callbacks.h
[modify] https://crrev.com/627e7f73d47910f4255031de55075e2a04b222f6/content/browser/indexed_db/indexed_db_database_unittest.cc
[modify] https://crrev.com/627e7f73d47910f4255031de55075e2a04b222f6/content/browser/indexed_db/indexed_db_dispatcher_host.cc
[modify] https://crrev.com/627e7f73d47910f4255031de55075e2a04b222f6/content/browser/indexed_db/indexed_db_dispatcher_host.h
[modify] https://crrev.com/627e7f73d47910f4255031de55075e2a04b222f6/content/browser/indexed_db/indexed_db_factory_unittest.cc
[modify] https://crrev.com/627e7f73d47910f4255031de55075e2a04b222f6/content/browser/indexed_db/indexed_db_index_writer.h
[modify] https://crrev.com/627e7f73d47910f4255031de55075e2a04b222f6/content/browser/indexed_db/indexed_db_transaction_unittest.cc
[modify] https://crrev.com/627e7f73d47910f4255031de55075e2a04b222f6/content/browser/indexed_db/mock_indexed_db_database_callbacks.cc
[modify] https://crrev.com/627e7f73d47910f4255031de55075e2a04b222f6/content/child/BUILD.gn
[add] https://crrev.com/627e7f73d47910f4255031de55075e2a04b222f6/content/child/indexed_db/indexed_db_callbacks_impl.cc
[add] https://crrev.com/627e7f73d47910f4255031de55075e2a04b222f6/content/child/indexed_db/indexed_db_callbacks_impl.h
[add] https://crrev.com/627e7f73d47910f4255031de55075e2a04b222f6/content/child/indexed_db/indexed_db_database_callbacks_impl.cc
[add] https://crrev.com/627e7f73d47910f4255031de55075e2a04b222f6/content/child/indexed_db/indexed_db_database_callbacks_impl.h
[modify] https://crrev.com/627e7f73d47910f4255031de55075e2a04b222f6/content/child/indexed_db/indexed_db_dispatcher.cc
[modify] https://crrev.com/627e7f73d47910f4255031de55075e2a04b222f6/content/child/indexed_db/indexed_db_dispatcher.h
[modify] https://crrev.com/627e7f73d47910f4255031de55075e2a04b222f6/content/child/indexed_db/indexed_db_message_filter.cc
[modify] https://crrev.com/627e7f73d47910f4255031de55075e2a04b222f6/content/child/indexed_db/indexed_db_message_filter.h
[modify] https://crrev.com/627e7f73d47910f4255031de55075e2a04b222f6/content/child/indexed_db/mock_webidbcallbacks.h
[modify] https://crrev.com/627e7f73d47910f4255031de55075e2a04b222f6/content/child/indexed_db/webidbdatabase_impl.cc
[modify] https://crrev.com/627e7f73d47910f4255031de55075e2a04b222f6/content/child/indexed_db/webidbdatabase_impl.h
[modify] https://crrev.com/627e7f73d47910f4255031de55075e2a04b222f6/content/child/indexed_db/webidbfactory_impl.cc
[modify] https://crrev.com/627e7f73d47910f4255031de55075e2a04b222f6/content/child/indexed_db/webidbfactory_impl.h
[modify] https://crrev.com/627e7f73d47910f4255031de55075e2a04b222f6/content/common/BUILD.gn
[modify] https://crrev.com/627e7f73d47910f4255031de55075e2a04b222f6/content/common/indexed_db/OWNERS
[add] https://crrev.com/627e7f73d47910f4255031de55075e2a04b222f6/content/common/indexed_db/indexed_db.mojom
[add] https://crrev.com/627e7f73d47910f4255031de55075e2a04b222f6/content/common/indexed_db/indexed_db.typemap
[modify] https://crrev.com/627e7f73d47910f4255031de55075e2a04b222f6/content/common/indexed_db/indexed_db_messages.h
[rename] https://crrev.com/627e7f73d47910f4255031de55075e2a04b222f6/content/common/indexed_db/indexed_db_metadata.cc
[rename] https://crrev.com/627e7f73d47910f4255031de55075e2a04b222f6/content/common/indexed_db/indexed_db_metadata.h
[add] https://crrev.com/627e7f73d47910f4255031de55075e2a04b222f6/content/common/indexed_db/indexed_db_struct_traits.cc
[add] https://crrev.com/627e7f73d47910f4255031de55075e2a04b222f6/content/common/indexed_db/indexed_db_struct_traits.h
[add] https://crrev.com/627e7f73d47910f4255031de55075e2a04b222f6/content/common/indexed_db/typemaps.gni
[modify] https://crrev.com/627e7f73d47910f4255031de55075e2a04b222f6/content/renderer/renderer_blink_platform_impl.cc
[modify] https://crrev.com/627e7f73d47910f4255031de55075e2a04b222f6/mojo/public/cpp/bindings/BUILD.gn
[modify] https://crrev.com/627e7f73d47910f4255031de55075e2a04b222f6/mojo/public/cpp/bindings/array_traits_stl.h
[modify] https://crrev.com/627e7f73d47910f4255031de55075e2a04b222f6/mojo/public/cpp/bindings/associated_interface_ptr_info.h
[add] https://crrev.com/627e7f73d47910f4255031de55075e2a04b222f6/mojo/public/cpp/bindings/strong_associated_binding.h
[modify] https://crrev.com/627e7f73d47910f4255031de55075e2a04b222f6/mojo/public/tools/bindings/chromium_bindings_configuration.gni
[modify] https://crrev.com/627e7f73d47910f4255031de55075e2a04b222f6/mojo/public/tools/bindings/mojom.gni
[modify] https://crrev.com/627e7f73d47910f4255031de55075e2a04b222f6/third_party/WebKit/Source/modules/indexeddb/IDBCursor.cpp
[modify] https://crrev.com/627e7f73d47910f4255031de55075e2a04b222f6/third_party/WebKit/Source/modules/indexeddb/IDBDatabase.cpp
[modify] https://crrev.com/627e7f73d47910f4255031de55075e2a04b222f6/third_party/WebKit/Source/modules/indexeddb/IDBDatabaseCallbacks.cpp
[modify] https://crrev.com/627e7f73d47910f4255031de55075e2a04b222f6/third_party/WebKit/Source/modules/indexeddb/IDBDatabaseCallbacks.h
[modify] https://crrev.com/627e7f73d47910f4255031de55075e2a04b222f6/third_party/WebKit/Source/modules/indexeddb/IDBFactory.cpp
[modify] https://crrev.com/627e7f73d47910f4255031de55075e2a04b222f6/third_party/WebKit/Source/modules/indexeddb/IDBIndex.cpp
[modify] https://crrev.com/627e7f73d47910f4255031de55075e2a04b222f6/third_party/WebKit/Source/modules/indexeddb/IDBObjectStore.cpp
[modify] https://crrev.com/627e7f73d47910f4255031de55075e2a04b222f6/third_party/WebKit/Source/modules/indexeddb/IDBOpenDBRequest.cpp
[modify] https://crrev.com/627e7f73d47910f4255031de55075e2a04b222f6/third_party/WebKit/Source/modules/indexeddb/IDBOpenDBRequest.h
[modify] https://crrev.com/627e7f73d47910f4255031de55075e2a04b222f6/third_party/WebKit/Source/modules/indexeddb/IDBRequest.cpp
[modify] https://crrev.com/627e7f73d47910f4255031de55075e2a04b222f6/third_party/WebKit/Source/modules/indexeddb/IDBRequest.h
[modify] https://crrev.com/627e7f73d47910f4255031de55075e2a04b222f6/third_party/WebKit/Source/modules/indexeddb/IDBRequestTest.cpp
[modify] https://crrev.com/627e7f73d47910f4255031de55075e2a04b222f6/third_party/WebKit/Source/modules/indexeddb/WebIDBCallbacksImpl.cpp
[modify] https://crrev.com/627e7f73d47910f4255031de55075e2a04b222f6/third_party/WebKit/Source/modules/indexeddb/WebIDBCallbacksImpl.h
[modify] https://crrev.com/627e7f73d47910f4255031de55075e2a04b222f6/third_party/WebKit/Source/modules/indexeddb/WebIDBDatabaseCallbacksImpl.cpp
[modify] https://crrev.com/627e7f73d47910f4255031de55075e2a04b222f6/third_party/WebKit/Source/modules/indexeddb/WebIDBDatabaseCallbacksImpl.h
[modify] https://crrev.com/627e7f73d47910f4255031de55075e2a04b222f6/third_party/WebKit/public/platform/modules/indexeddb/WebIDBCallbacks.h
[modify] https://crrev.com/627e7f73d47910f4255031de55075e2a04b222f6/third_party/WebKit/public/platform/modules/indexeddb/WebIDBDatabaseCallbacks.h

Project Member

Comment 4 by bugdroid1@chromium.org, Oct 24 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/ef35213f198a8ce5a59e3c1b74afa858587c61c9

commit ef35213f198a8ce5a59e3c1b74afa858587c61c9
Author: reillyg <reillyg@chromium.org>
Date: Mon Oct 24 19:36:37 2016

Make IndexedDBConnection IDs independent from the IPC database ID.

I'm removing the IPC database ID as part of the Mojo conversion so
reusing it for the IndexedDBConnection ID just makes things confusing.
Note that the database observer IPCs don't actually make use of this ID
so this patch stops sending it.

BUG= 627484 

Review-Url: https://codereview.chromium.org/2438233004
Cr-Commit-Position: refs/heads/master@{#427117}

[modify] https://crrev.com/ef35213f198a8ce5a59e3c1b74afa858587c61c9/content/browser/indexed_db/indexed_db_connection.cc
[modify] https://crrev.com/ef35213f198a8ce5a59e3c1b74afa858587c61c9/content/browser/indexed_db/indexed_db_connection.h
[modify] https://crrev.com/ef35213f198a8ce5a59e3c1b74afa858587c61c9/content/browser/indexed_db/indexed_db_database.cc
[modify] https://crrev.com/ef35213f198a8ce5a59e3c1b74afa858587c61c9/content/browser/indexed_db/indexed_db_database_callbacks.cc
[modify] https://crrev.com/ef35213f198a8ce5a59e3c1b74afa858587c61c9/content/browser/indexed_db/indexed_db_database_callbacks.h
[modify] https://crrev.com/ef35213f198a8ce5a59e3c1b74afa858587c61c9/content/browser/indexed_db/indexed_db_dispatcher_host.cc
[modify] https://crrev.com/ef35213f198a8ce5a59e3c1b74afa858587c61c9/content/child/indexed_db/indexed_db_dispatcher.cc
[modify] https://crrev.com/ef35213f198a8ce5a59e3c1b74afa858587c61c9/content/child/indexed_db/indexed_db_dispatcher.h
[modify] https://crrev.com/ef35213f198a8ce5a59e3c1b74afa858587c61c9/content/common/indexed_db/indexed_db_messages.h

Project Member

Comment 5 by bugdroid1@chromium.org, Nov 5 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/963ec6df64089bef6867ccdc608101d5fc06d5c0

commit 963ec6df64089bef6867ccdc608101d5fc06d5c0
Author: reillyg <reillyg@chromium.org>
Date: Sat Nov 05 01:10:58 2016

Port messages sent by WebIDBDatabaseImpl to Mojo.

This is part two of the series of patches that converts the IPC messages
sent by WebIDBFactoryImpl, WebIDBDatabaseImpl and WebIDBCursorImpl to
Mojo messages.

This is a more mechanical change because the conversion of messages sent
by WebIDBFactoryImpl added most of the necessary infrastructure.

BUG= 627484 

Review-Url: https://codereview.chromium.org/2449953008
Cr-Commit-Position: refs/heads/master@{#430110}

[modify] https://crrev.com/963ec6df64089bef6867ccdc608101d5fc06d5c0/content/browser/BUILD.gn
[add] https://crrev.com/963ec6df64089bef6867ccdc608101d5fc06d5c0/content/browser/indexed_db/database_impl.cc
[add] https://crrev.com/963ec6df64089bef6867ccdc608101d5fc06d5c0/content/browser/indexed_db/database_impl.h
[modify] https://crrev.com/963ec6df64089bef6867ccdc608101d5fc06d5c0/content/browser/indexed_db/indexed_db_callbacks.cc
[modify] https://crrev.com/963ec6df64089bef6867ccdc608101d5fc06d5c0/content/browser/indexed_db/indexed_db_callbacks.h
[modify] https://crrev.com/963ec6df64089bef6867ccdc608101d5fc06d5c0/content/browser/indexed_db/indexed_db_database.cc
[modify] https://crrev.com/963ec6df64089bef6867ccdc608101d5fc06d5c0/content/browser/indexed_db/indexed_db_database.h
[modify] https://crrev.com/963ec6df64089bef6867ccdc608101d5fc06d5c0/content/browser/indexed_db/indexed_db_database_unittest.cc
[modify] https://crrev.com/963ec6df64089bef6867ccdc608101d5fc06d5c0/content/browser/indexed_db/indexed_db_dispatcher_host.cc
[modify] https://crrev.com/963ec6df64089bef6867ccdc608101d5fc06d5c0/content/browser/indexed_db/indexed_db_dispatcher_host.h
[modify] https://crrev.com/963ec6df64089bef6867ccdc608101d5fc06d5c0/content/browser/indexed_db/indexed_db_index_writer.cc
[modify] https://crrev.com/963ec6df64089bef6867ccdc608101d5fc06d5c0/content/browser/indexed_db/indexed_db_index_writer.h
[modify] https://crrev.com/963ec6df64089bef6867ccdc608101d5fc06d5c0/content/child/indexed_db/indexed_db_callbacks_impl.cc
[modify] https://crrev.com/963ec6df64089bef6867ccdc608101d5fc06d5c0/content/child/indexed_db/indexed_db_callbacks_impl.h
[modify] https://crrev.com/963ec6df64089bef6867ccdc608101d5fc06d5c0/content/child/indexed_db/indexed_db_dispatcher.cc
[modify] https://crrev.com/963ec6df64089bef6867ccdc608101d5fc06d5c0/content/child/indexed_db/indexed_db_dispatcher.h
[delete] https://crrev.com/ce7b196756d70afc2a98de8da644f78a1cfb6402/content/child/indexed_db/indexed_db_dispatcher_unittest.cc
[modify] https://crrev.com/963ec6df64089bef6867ccdc608101d5fc06d5c0/content/child/indexed_db/webidbdatabase_impl.cc
[modify] https://crrev.com/963ec6df64089bef6867ccdc608101d5fc06d5c0/content/child/indexed_db/webidbdatabase_impl.h
[add] https://crrev.com/963ec6df64089bef6867ccdc608101d5fc06d5c0/content/child/indexed_db/webidbdatabase_impl_unittest.cc
[modify] https://crrev.com/963ec6df64089bef6867ccdc608101d5fc06d5c0/content/child/indexed_db/webidbfactory_impl.cc
[modify] https://crrev.com/963ec6df64089bef6867ccdc608101d5fc06d5c0/content/common/indexed_db/indexed_db.mojom
[modify] https://crrev.com/963ec6df64089bef6867ccdc608101d5fc06d5c0/content/common/indexed_db/indexed_db.typemap
[modify] https://crrev.com/963ec6df64089bef6867ccdc608101d5fc06d5c0/content/common/indexed_db/indexed_db_key.h
[modify] https://crrev.com/963ec6df64089bef6867ccdc608101d5fc06d5c0/content/common/indexed_db/indexed_db_messages.h
[modify] https://crrev.com/963ec6df64089bef6867ccdc608101d5fc06d5c0/content/common/indexed_db/indexed_db_struct_traits.cc
[modify] https://crrev.com/963ec6df64089bef6867ccdc608101d5fc06d5c0/content/common/indexed_db/indexed_db_struct_traits.h
[modify] https://crrev.com/963ec6df64089bef6867ccdc608101d5fc06d5c0/content/test/BUILD.gn
[modify] https://crrev.com/963ec6df64089bef6867ccdc608101d5fc06d5c0/mojo/public/cpp/bindings/lib/handle_interface_serialization.h

Project Member

Comment 6 by bugdroid1@chromium.org, Nov 22 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/39fb46622f2322243ff84f8c282f575d46c54c13

commit 39fb46622f2322243ff84f8c282f575d46c54c13
Author: reillyg <reillyg@chromium.org>
Date: Tue Nov 22 20:27:17 2016

Port messages sent by WebIDBCursorImpl to Mojo.

This is the third and final patch in a series that converts the IPC
messages sent by WebIDBFactoryImpl, WebIDBDatabaseImpl and
WebIDBCursorImpl to Mojo messages.

This is a mostly mechanical change which also allows a lot of code
supporting the legacy IPC messages to be removed.

BUG= 627484 

Review-Url: https://codereview.chromium.org/2500263003
Cr-Commit-Position: refs/heads/master@{#433964}

[modify] https://crrev.com/39fb46622f2322243ff84f8c282f575d46c54c13/content/browser/BUILD.gn
[add] https://crrev.com/39fb46622f2322243ff84f8c282f575d46c54c13/content/browser/indexed_db/cursor_impl.cc
[add] https://crrev.com/39fb46622f2322243ff84f8c282f575d46c54c13/content/browser/indexed_db/cursor_impl.h
[modify] https://crrev.com/39fb46622f2322243ff84f8c282f575d46c54c13/content/browser/indexed_db/indexed_db_callbacks.cc
[modify] https://crrev.com/39fb46622f2322243ff84f8c282f575d46c54c13/content/browser/indexed_db/indexed_db_callbacks.h
[modify] https://crrev.com/39fb46622f2322243ff84f8c282f575d46c54c13/content/browser/indexed_db/indexed_db_database_unittest.cc
[modify] https://crrev.com/39fb46622f2322243ff84f8c282f575d46c54c13/content/browser/indexed_db/indexed_db_dispatcher_host.cc
[modify] https://crrev.com/39fb46622f2322243ff84f8c282f575d46c54c13/content/browser/indexed_db/indexed_db_dispatcher_host.h
[modify] https://crrev.com/39fb46622f2322243ff84f8c282f575d46c54c13/content/browser/indexed_db/indexed_db_factory_unittest.cc
[modify] https://crrev.com/39fb46622f2322243ff84f8c282f575d46c54c13/content/browser/indexed_db/indexed_db_unittest.cc
[modify] https://crrev.com/39fb46622f2322243ff84f8c282f575d46c54c13/content/browser/indexed_db/mock_indexed_db_callbacks.cc
[modify] https://crrev.com/39fb46622f2322243ff84f8c282f575d46c54c13/content/child/indexed_db/indexed_db_callbacks_impl.cc
[modify] https://crrev.com/39fb46622f2322243ff84f8c282f575d46c54c13/content/child/indexed_db/indexed_db_callbacks_impl.h
[modify] https://crrev.com/39fb46622f2322243ff84f8c282f575d46c54c13/content/child/indexed_db/indexed_db_database_callbacks_impl.cc
[modify] https://crrev.com/39fb46622f2322243ff84f8c282f575d46c54c13/content/child/indexed_db/indexed_db_database_callbacks_impl.h
[modify] https://crrev.com/39fb46622f2322243ff84f8c282f575d46c54c13/content/child/indexed_db/indexed_db_dispatcher.cc
[modify] https://crrev.com/39fb46622f2322243ff84f8c282f575d46c54c13/content/child/indexed_db/indexed_db_dispatcher.h
[modify] https://crrev.com/39fb46622f2322243ff84f8c282f575d46c54c13/content/child/indexed_db/indexed_db_message_filter.cc
[modify] https://crrev.com/39fb46622f2322243ff84f8c282f575d46c54c13/content/child/indexed_db/webidbcursor_impl.cc
[modify] https://crrev.com/39fb46622f2322243ff84f8c282f575d46c54c13/content/child/indexed_db/webidbcursor_impl.h
[modify] https://crrev.com/39fb46622f2322243ff84f8c282f575d46c54c13/content/child/indexed_db/webidbcursor_impl_unittest.cc
[modify] https://crrev.com/39fb46622f2322243ff84f8c282f575d46c54c13/content/child/indexed_db/webidbdatabase_impl.cc
[modify] https://crrev.com/39fb46622f2322243ff84f8c282f575d46c54c13/content/child/indexed_db/webidbdatabase_impl.h
[modify] https://crrev.com/39fb46622f2322243ff84f8c282f575d46c54c13/content/child/indexed_db/webidbdatabase_impl_unittest.cc
[modify] https://crrev.com/39fb46622f2322243ff84f8c282f575d46c54c13/content/child/indexed_db/webidbfactory_impl.cc
[modify] https://crrev.com/39fb46622f2322243ff84f8c282f575d46c54c13/content/child/indexed_db/webidbfactory_impl.h
[modify] https://crrev.com/39fb46622f2322243ff84f8c282f575d46c54c13/content/common/indexed_db/indexed_db.mojom
[modify] https://crrev.com/39fb46622f2322243ff84f8c282f575d46c54c13/content/common/indexed_db/indexed_db_messages.h
[modify] https://crrev.com/39fb46622f2322243ff84f8c282f575d46c54c13/content/renderer/render_thread_impl.cc
[modify] https://crrev.com/39fb46622f2322243ff84f8c282f575d46c54c13/content/renderer/renderer_blink_platform_impl.cc
[modify] https://crrev.com/39fb46622f2322243ff84f8c282f575d46c54c13/mojo/public/cpp/bindings/associated_interface_ptr.h

Project Member

Comment 8 by bugdroid1@chromium.org, Nov 23 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/7793cc56cff1379a30a7d46f6f2d0684de56dec4

commit 7793cc56cff1379a30a7d46f6f2d0684de56dec4
Author: reillyg <reillyg@chromium.org>
Date: Wed Nov 23 00:04:15 2016

Define EnumTraits for many IndexedDB enums.

This moves the serialization code for the following IndexedDB enum types
from indexed_db_messages.h to indexed_db_enum_traits.h:

 * CursorDirection
 * DataLoss
 * PutMode
 * TaskType
 * TransactionMode

The remaining enum, OperationType, is used for IDBObservers which have
not yet been converted to Mojo.

BUG= 627484 

Review-Url: https://codereview.chromium.org/2507233002
Cr-Commit-Position: refs/heads/master@{#434034}

[modify] https://crrev.com/7793cc56cff1379a30a7d46f6f2d0684de56dec4/content/common/BUILD.gn
[modify] https://crrev.com/7793cc56cff1379a30a7d46f6f2d0684de56dec4/content/common/indexed_db/indexed_db.mojom
[modify] https://crrev.com/7793cc56cff1379a30a7d46f6f2d0684de56dec4/content/common/indexed_db/indexed_db.typemap
[add] https://crrev.com/7793cc56cff1379a30a7d46f6f2d0684de56dec4/content/common/indexed_db/indexed_db_enum_traits.cc
[add] https://crrev.com/7793cc56cff1379a30a7d46f6f2d0684de56dec4/content/common/indexed_db/indexed_db_enum_traits.h
[modify] https://crrev.com/7793cc56cff1379a30a7d46f6f2d0684de56dec4/content/common/indexed_db/indexed_db_messages.h
[modify] https://crrev.com/7793cc56cff1379a30a7d46f6f2d0684de56dec4/third_party/WebKit/public/platform/modules/indexeddb/WebIDBTypes.h

Project Member

Comment 10 by bugdroid1@chromium.org, Nov 28 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/8f7a4e424f50eec24ec03e2e11f7048b1a3f6b0b

commit 8f7a4e424f50eec24ec03e2e11f7048b1a3f6b0b
Author: reillyg <reillyg@chromium.org>
Date: Mon Nov 28 23:53:22 2016

Send IndexedDB observations through IDBDatabaseCallbacks.

This change refactors IndexedDB observations that they are transmitted
through the same DatabaseCallbacks Mojo interface as other out-of-band
database events. This means we can delete a lot of code that existed
specifically to support observers in the Blink public API and remove
the last remaining legacy IPC messages from indexed_db_messages.h.

Note, indexed_db_messages.h remains after this change because removing
it causes a lot of unrelated code churn.

BUG= 627484 

Review-Url: https://codereview.chromium.org/2511403003
Cr-Commit-Position: refs/heads/master@{#434781}

[modify] https://crrev.com/8f7a4e424f50eec24ec03e2e11f7048b1a3f6b0b/content/browser/BUILD.gn
[modify] https://crrev.com/8f7a4e424f50eec24ec03e2e11f7048b1a3f6b0b/content/browser/indexed_db/database_impl.cc
[modify] https://crrev.com/8f7a4e424f50eec24ec03e2e11f7048b1a3f6b0b/content/browser/indexed_db/indexed_db_callbacks.cc
[modify] https://crrev.com/8f7a4e424f50eec24ec03e2e11f7048b1a3f6b0b/content/browser/indexed_db/indexed_db_database.cc
[modify] https://crrev.com/8f7a4e424f50eec24ec03e2e11f7048b1a3f6b0b/content/browser/indexed_db/indexed_db_database.h
[modify] https://crrev.com/8f7a4e424f50eec24ec03e2e11f7048b1a3f6b0b/content/browser/indexed_db/indexed_db_database_callbacks.cc
[modify] https://crrev.com/8f7a4e424f50eec24ec03e2e11f7048b1a3f6b0b/content/browser/indexed_db/indexed_db_database_callbacks.h
[modify] https://crrev.com/8f7a4e424f50eec24ec03e2e11f7048b1a3f6b0b/content/browser/indexed_db/indexed_db_dispatcher_host.cc
[modify] https://crrev.com/8f7a4e424f50eec24ec03e2e11f7048b1a3f6b0b/content/browser/indexed_db/indexed_db_dispatcher_host.h
[modify] https://crrev.com/8f7a4e424f50eec24ec03e2e11f7048b1a3f6b0b/content/browser/indexed_db/indexed_db_factory_unittest.cc
[delete] https://crrev.com/8976c9ccfc0a6eadfdeca964beb69a64e516bfce/content/browser/indexed_db/indexed_db_observation.cc
[delete] https://crrev.com/8976c9ccfc0a6eadfdeca964beb69a64e516bfce/content/browser/indexed_db/indexed_db_observation.h
[delete] https://crrev.com/8976c9ccfc0a6eadfdeca964beb69a64e516bfce/content/browser/indexed_db/indexed_db_observer_changes.cc
[delete] https://crrev.com/8976c9ccfc0a6eadfdeca964beb69a64e516bfce/content/browser/indexed_db/indexed_db_observer_changes.h
[modify] https://crrev.com/8f7a4e424f50eec24ec03e2e11f7048b1a3f6b0b/content/browser/indexed_db/indexed_db_transaction.cc
[modify] https://crrev.com/8f7a4e424f50eec24ec03e2e11f7048b1a3f6b0b/content/browser/indexed_db/indexed_db_transaction.h
[modify] https://crrev.com/8f7a4e424f50eec24ec03e2e11f7048b1a3f6b0b/content/browser/indexed_db/mock_indexed_db_database_callbacks.cc
[modify] https://crrev.com/8f7a4e424f50eec24ec03e2e11f7048b1a3f6b0b/content/child/BUILD.gn
[modify] https://crrev.com/8f7a4e424f50eec24ec03e2e11f7048b1a3f6b0b/content/child/indexed_db/indexed_db_database_callbacks_impl.cc
[modify] https://crrev.com/8f7a4e424f50eec24ec03e2e11f7048b1a3f6b0b/content/child/indexed_db/indexed_db_database_callbacks_impl.h
[modify] https://crrev.com/8f7a4e424f50eec24ec03e2e11f7048b1a3f6b0b/content/child/indexed_db/indexed_db_dispatcher.cc
[modify] https://crrev.com/8f7a4e424f50eec24ec03e2e11f7048b1a3f6b0b/content/child/indexed_db/indexed_db_dispatcher.h
[delete] https://crrev.com/8976c9ccfc0a6eadfdeca964beb69a64e516bfce/content/child/indexed_db/indexed_db_message_filter.cc
[delete] https://crrev.com/8976c9ccfc0a6eadfdeca964beb69a64e516bfce/content/child/indexed_db/indexed_db_message_filter.h
[modify] https://crrev.com/8f7a4e424f50eec24ec03e2e11f7048b1a3f6b0b/content/child/indexed_db/webidbcursor_impl.cc
[modify] https://crrev.com/8f7a4e424f50eec24ec03e2e11f7048b1a3f6b0b/content/child/indexed_db/webidbdatabase_impl.cc
[modify] https://crrev.com/8f7a4e424f50eec24ec03e2e11f7048b1a3f6b0b/content/child/indexed_db/webidbdatabase_impl.h
[modify] https://crrev.com/8f7a4e424f50eec24ec03e2e11f7048b1a3f6b0b/content/child/indexed_db/webidbfactory_impl.cc
[modify] https://crrev.com/8f7a4e424f50eec24ec03e2e11f7048b1a3f6b0b/content/common/BUILD.gn
[modify] https://crrev.com/8f7a4e424f50eec24ec03e2e11f7048b1a3f6b0b/content/common/indexed_db/indexed_db.mojom
[modify] https://crrev.com/8f7a4e424f50eec24ec03e2e11f7048b1a3f6b0b/content/common/indexed_db/indexed_db.typemap
[modify] https://crrev.com/8f7a4e424f50eec24ec03e2e11f7048b1a3f6b0b/content/common/indexed_db/indexed_db_enum_traits.cc
[modify] https://crrev.com/8f7a4e424f50eec24ec03e2e11f7048b1a3f6b0b/content/common/indexed_db/indexed_db_enum_traits.h
[modify] https://crrev.com/8f7a4e424f50eec24ec03e2e11f7048b1a3f6b0b/content/common/indexed_db/indexed_db_messages.h
[delete] https://crrev.com/8976c9ccfc0a6eadfdeca964beb69a64e516bfce/content/common/indexed_db/indexed_db_param_traits.cc
[delete] https://crrev.com/8976c9ccfc0a6eadfdeca964beb69a64e516bfce/content/common/indexed_db/indexed_db_param_traits.h
[modify] https://crrev.com/8f7a4e424f50eec24ec03e2e11f7048b1a3f6b0b/content/common/indexed_db/indexed_db_struct_traits.cc
[modify] https://crrev.com/8f7a4e424f50eec24ec03e2e11f7048b1a3f6b0b/content/renderer/render_thread_impl.cc
[modify] https://crrev.com/8f7a4e424f50eec24ec03e2e11f7048b1a3f6b0b/third_party/WebKit/Source/modules/indexeddb/BUILD.gn
[modify] https://crrev.com/8f7a4e424f50eec24ec03e2e11f7048b1a3f6b0b/third_party/WebKit/Source/modules/indexeddb/IDBDatabase.cpp
[modify] https://crrev.com/8f7a4e424f50eec24ec03e2e11f7048b1a3f6b0b/third_party/WebKit/Source/modules/indexeddb/IDBDatabase.h
[modify] https://crrev.com/8f7a4e424f50eec24ec03e2e11f7048b1a3f6b0b/third_party/WebKit/Source/modules/indexeddb/IDBDatabaseCallbacks.cpp
[modify] https://crrev.com/8f7a4e424f50eec24ec03e2e11f7048b1a3f6b0b/third_party/WebKit/Source/modules/indexeddb/IDBDatabaseCallbacks.h
[modify] https://crrev.com/8f7a4e424f50eec24ec03e2e11f7048b1a3f6b0b/third_party/WebKit/Source/modules/indexeddb/IDBObserver.cpp
[modify] https://crrev.com/8f7a4e424f50eec24ec03e2e11f7048b1a3f6b0b/third_party/WebKit/Source/modules/indexeddb/IDBObserver.h
[modify] https://crrev.com/8f7a4e424f50eec24ec03e2e11f7048b1a3f6b0b/third_party/WebKit/Source/modules/indexeddb/MockWebIDBDatabase.h
[modify] https://crrev.com/8f7a4e424f50eec24ec03e2e11f7048b1a3f6b0b/third_party/WebKit/Source/modules/indexeddb/WebIDBDatabaseCallbacksImpl.cpp
[modify] https://crrev.com/8f7a4e424f50eec24ec03e2e11f7048b1a3f6b0b/third_party/WebKit/Source/modules/indexeddb/WebIDBDatabaseCallbacksImpl.h
[delete] https://crrev.com/8976c9ccfc0a6eadfdeca964beb69a64e516bfce/third_party/WebKit/Source/modules/indexeddb/WebIDBObserverImpl.cpp
[delete] https://crrev.com/8976c9ccfc0a6eadfdeca964beb69a64e516bfce/third_party/WebKit/Source/modules/indexeddb/WebIDBObserverImpl.h
[modify] https://crrev.com/8f7a4e424f50eec24ec03e2e11f7048b1a3f6b0b/third_party/WebKit/public/BUILD.gn
[modify] https://crrev.com/8f7a4e424f50eec24ec03e2e11f7048b1a3f6b0b/third_party/WebKit/public/platform/modules/indexeddb/WebIDBDatabase.h
[modify] https://crrev.com/8f7a4e424f50eec24ec03e2e11f7048b1a3f6b0b/third_party/WebKit/public/platform/modules/indexeddb/WebIDBDatabaseCallbacks.h
[delete] https://crrev.com/8976c9ccfc0a6eadfdeca964beb69a64e516bfce/third_party/WebKit/public/platform/modules/indexeddb/WebIDBObserver.h
[modify] https://crrev.com/8f7a4e424f50eec24ec03e2e11f7048b1a3f6b0b/third_party/WebKit/public/platform/modules/indexeddb/WebIDBTypes.h
[modify] https://crrev.com/8f7a4e424f50eec24ec03e2e11f7048b1a3f6b0b/tools/ipc_fuzzer/fuzzer/fuzzer.cc

Owner: reillyg@chromium.org
Giving to reillyg who is doing all the work on this.
Project Member

Comment 12 by bugdroid1@chromium.org, Jan 6 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/bcb0b710d7986c14c48c7bc872a70095aef10637

commit bcb0b710d7986c14c48c7bc872a70095aef10637
Author: reillyg <reillyg@chromium.org>
Date: Fri Jan 06 16:24:54 2017

Remove indexed_db_messages.h.

This patch removes indexed_db_messages.h and makes
IndexedDBDispatcherHost no longer a BrowserMessageFilter.

Handling the special case of a channel close during a DB open operation
does not seem to be necessary as long as we ensure that the database
handle does not get stuck in a closed Mojo pipe so the logic (and test
for it) have been removed.

BUG= 627484 

Review-Url: https://codereview.chromium.org/2601163002
Cr-Commit-Position: refs/heads/master@{#441947}

[modify] https://crrev.com/bcb0b710d7986c14c48c7bc872a70095aef10637/content/browser/indexed_db/indexed_db_callbacks.cc
[modify] https://crrev.com/bcb0b710d7986c14c48c7bc872a70095aef10637/content/browser/indexed_db/indexed_db_callbacks.h
[modify] https://crrev.com/bcb0b710d7986c14c48c7bc872a70095aef10637/content/browser/indexed_db/indexed_db_database.cc
[modify] https://crrev.com/bcb0b710d7986c14c48c7bc872a70095aef10637/content/browser/indexed_db/indexed_db_database_unittest.cc
[modify] https://crrev.com/bcb0b710d7986c14c48c7bc872a70095aef10637/content/browser/indexed_db/indexed_db_dispatcher_host.cc
[modify] https://crrev.com/bcb0b710d7986c14c48c7bc872a70095aef10637/content/browser/indexed_db/indexed_db_dispatcher_host.h
[modify] https://crrev.com/bcb0b710d7986c14c48c7bc872a70095aef10637/content/browser/indexed_db/indexed_db_transaction.cc
[modify] https://crrev.com/bcb0b710d7986c14c48c7bc872a70095aef10637/content/browser/indexed_db/indexed_db_unittest.cc
[modify] https://crrev.com/bcb0b710d7986c14c48c7bc872a70095aef10637/content/browser/indexed_db/mock_indexed_db_callbacks.cc
[modify] https://crrev.com/bcb0b710d7986c14c48c7bc872a70095aef10637/content/browser/indexed_db/mock_indexed_db_callbacks.h
[modify] https://crrev.com/bcb0b710d7986c14c48c7bc872a70095aef10637/content/browser/renderer_host/render_process_host_impl.cc
[modify] https://crrev.com/bcb0b710d7986c14c48c7bc872a70095aef10637/content/browser/renderer_host/render_process_host_impl.h
[modify] https://crrev.com/bcb0b710d7986c14c48c7bc872a70095aef10637/content/common/BUILD.gn
[modify] https://crrev.com/bcb0b710d7986c14c48c7bc872a70095aef10637/content/common/content_message_generator.h
[delete] https://crrev.com/8739cd56aa328f7972c60cba5f0d3348a108c273/content/common/indexed_db/indexed_db_messages.h
[modify] https://crrev.com/bcb0b710d7986c14c48c7bc872a70095aef10637/ipc/ipc_message_start.h

Status: Fixed (was: Started)

Sign in to add a comment