New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 669967 link

Starred by 1 user

Issue metadata

Status: WontFix
Owner:
Closed: Jan 2018
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 2
Type: Bug

Blocked on:
issue 685337



Sign in to add a comment

[Sync] SBHI/SBHC should be refactored into clean interfaces

Project Member Reported by maxbogue@chromium.org, Nov 30 2016

Issue description

Right now they are tightly coupled. They should be refactored to use clean interfaces between the UI and sync thread.

See https://docs.google.com/document/d/1SmRbtPDpRDa2qCu_LXxRQeVV0fcojGIKrUaYaK5SnPw/edit# for more.
 
Project Member

Comment 1 by bugdroid1@chromium.org, Dec 1 2016

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

commit 75b2278e77eda3ac01262a16ca45151ab8253e06
Author: maxbogue <maxbogue@chromium.org>
Date: Thu Dec 01 00:44:19 2016

[Sync] Pass a TaskRunner into SBHI/SBHC, not a thread or message loop.

BUG= 669967 

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

[modify] https://crrev.com/75b2278e77eda3ac01262a16ca45151ab8253e06/components/browser_sync/abstract_profile_sync_service_test.cc
[modify] https://crrev.com/75b2278e77eda3ac01262a16ca45151ab8253e06/components/browser_sync/profile_sync_components_factory_impl.cc
[modify] https://crrev.com/75b2278e77eda3ac01262a16ca45151ab8253e06/components/browser_sync/profile_sync_service.cc
[modify] https://crrev.com/75b2278e77eda3ac01262a16ca45151ab8253e06/components/browser_sync/profile_sync_service.h
[modify] https://crrev.com/75b2278e77eda3ac01262a16ca45151ab8253e06/components/browser_sync/profile_sync_service_unittest.cc
[modify] https://crrev.com/75b2278e77eda3ac01262a16ca45151ab8253e06/components/sync/driver/glue/sync_backend_host.h
[modify] https://crrev.com/75b2278e77eda3ac01262a16ca45151ab8253e06/components/sync/driver/glue/sync_backend_host_core.cc
[modify] https://crrev.com/75b2278e77eda3ac01262a16ca45151ab8253e06/components/sync/driver/glue/sync_backend_host_core.h
[modify] https://crrev.com/75b2278e77eda3ac01262a16ca45151ab8253e06/components/sync/driver/glue/sync_backend_host_impl.cc
[modify] https://crrev.com/75b2278e77eda3ac01262a16ca45151ab8253e06/components/sync/driver/glue/sync_backend_host_impl.h
[modify] https://crrev.com/75b2278e77eda3ac01262a16ca45151ab8253e06/components/sync/driver/glue/sync_backend_host_impl_unittest.cc
[modify] https://crrev.com/75b2278e77eda3ac01262a16ca45151ab8253e06/components/sync/driver/glue/sync_backend_host_mock.cc
[modify] https://crrev.com/75b2278e77eda3ac01262a16ca45151ab8253e06/components/sync/driver/glue/sync_backend_host_mock.h

Project Member

Comment 2 by bugdroid1@chromium.org, Dec 2 2016

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

commit 1bbc6856145b3e8e2984c9f7bef9261094e8fc9f
Author: maxbogue <maxbogue@chromium.org>
Date: Fri Dec 02 16:51:43 2016

[Sync] Remove !frontend_ checks in SBHI.

All these functions are called from SyncBackendHostCore using a WeakHandle,
and we invalidate WeakPtrs during shutdown before nulling out the frontend_
pointer, so they aren't necessary.

BUG= 669967 

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

[modify] https://crrev.com/1bbc6856145b3e8e2984c9f7bef9261094e8fc9f/components/sync/driver/glue/sync_backend_host_impl.cc

Project Member

Comment 3 by bugdroid1@chromium.org, Dec 5 2016

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

commit 6dcda76d27564c8a9d854803762fa64bf62c670e
Author: maxbogue <maxbogue@chromium.org>
Date: Mon Dec 05 20:45:56 2016

[Sync] SyncEngine refactor part 1: interfaces.

- SyncBackendHost -> SyncEngine
- SyncFrontend -> SyncEngineHost
- BackendDataTypeConfigurer -> ModelTypeConfigurer
- SyncBackendHostMock -> FakeSyncEngine

Note that this CL intentionally does not update variable and method
names inside ProfileSyncService because there are so many that I'm
making it a separate CL.

BUG= 669967 

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

[modify] https://crrev.com/6dcda76d27564c8a9d854803762fa64bf62c670e/chrome/browser/permissions/permission_uma_util_unittest.cc
[modify] https://crrev.com/6dcda76d27564c8a9d854803762fa64bf62c670e/chrome/browser/sync/sync_error_notifier_ash_unittest.cc
[modify] https://crrev.com/6dcda76d27564c8a9d854803762fa64bf62c670e/chrome/browser/sync/sync_global_error_unittest.cc
[modify] https://crrev.com/6dcda76d27564c8a9d854803762fa64bf62c670e/chrome/browser/sync/sync_ui_util_unittest.cc
[modify] https://crrev.com/6dcda76d27564c8a9d854803762fa64bf62c670e/chrome/service/cloud_print/cloud_print_proxy_backend.h
[modify] https://crrev.com/6dcda76d27564c8a9d854803762fa64bf62c670e/components/browser_sync/abstract_profile_sync_service_test.cc
[modify] https://crrev.com/6dcda76d27564c8a9d854803762fa64bf62c670e/components/browser_sync/profile_sync_components_factory_impl.cc
[modify] https://crrev.com/6dcda76d27564c8a9d854803762fa64bf62c670e/components/browser_sync/profile_sync_components_factory_impl.h
[modify] https://crrev.com/6dcda76d27564c8a9d854803762fa64bf62c670e/components/browser_sync/profile_sync_service.cc
[modify] https://crrev.com/6dcda76d27564c8a9d854803762fa64bf62c670e/components/browser_sync/profile_sync_service.h
[modify] https://crrev.com/6dcda76d27564c8a9d854803762fa64bf62c670e/components/browser_sync/profile_sync_service_mock.h
[modify] https://crrev.com/6dcda76d27564c8a9d854803762fa64bf62c670e/components/browser_sync/profile_sync_service_startup_unittest.cc
[modify] https://crrev.com/6dcda76d27564c8a9d854803762fa64bf62c670e/components/browser_sync/profile_sync_service_unittest.cc
[modify] https://crrev.com/6dcda76d27564c8a9d854803762fa64bf62c670e/components/sync/BUILD.gn
[modify] https://crrev.com/6dcda76d27564c8a9d854803762fa64bf62c670e/components/sync/driver/data_type_controller.h
[modify] https://crrev.com/6dcda76d27564c8a9d854803762fa64bf62c670e/components/sync/driver/data_type_manager_impl.cc
[modify] https://crrev.com/6dcda76d27564c8a9d854803762fa64bf62c670e/components/sync/driver/data_type_manager_impl.h
[modify] https://crrev.com/6dcda76d27564c8a9d854803762fa64bf62c670e/components/sync/driver/data_type_manager_impl_unittest.cc
[modify] https://crrev.com/6dcda76d27564c8a9d854803762fa64bf62c670e/components/sync/driver/directory_data_type_controller.cc
[modify] https://crrev.com/6dcda76d27564c8a9d854803762fa64bf62c670e/components/sync/driver/directory_data_type_controller.h
[modify] https://crrev.com/6dcda76d27564c8a9d854803762fa64bf62c670e/components/sync/driver/fake_data_type_controller.cc
[modify] https://crrev.com/6dcda76d27564c8a9d854803762fa64bf62c670e/components/sync/driver/fake_data_type_controller.h
[modify] https://crrev.com/6dcda76d27564c8a9d854803762fa64bf62c670e/components/sync/driver/generic_change_processor_unittest.cc
[modify] https://crrev.com/6dcda76d27564c8a9d854803762fa64bf62c670e/components/sync/driver/glue/sync_backend_host_core.h
[modify] https://crrev.com/6dcda76d27564c8a9d854803762fa64bf62c670e/components/sync/driver/glue/sync_backend_host_impl.cc
[modify] https://crrev.com/6dcda76d27564c8a9d854803762fa64bf62c670e/components/sync/driver/glue/sync_backend_host_impl.h
[modify] https://crrev.com/6dcda76d27564c8a9d854803762fa64bf62c670e/components/sync/driver/glue/sync_backend_host_impl_unittest.cc
[delete] https://crrev.com/8a31bf7b6ee0f53ce944cfaf758b1c37ce6a6ba9/components/sync/driver/glue/sync_backend_host_mock.cc
[modify] https://crrev.com/6dcda76d27564c8a9d854803762fa64bf62c670e/components/sync/driver/model_association_manager.h
[modify] https://crrev.com/6dcda76d27564c8a9d854803762fa64bf62c670e/components/sync/driver/model_type_controller.cc
[modify] https://crrev.com/6dcda76d27564c8a9d854803762fa64bf62c670e/components/sync/driver/model_type_controller.h
[modify] https://crrev.com/6dcda76d27564c8a9d854803762fa64bf62c670e/components/sync/driver/model_type_controller_unittest.cc
[modify] https://crrev.com/6dcda76d27564c8a9d854803762fa64bf62c670e/components/sync/driver/proxy_data_type_controller.cc
[modify] https://crrev.com/6dcda76d27564c8a9d854803762fa64bf62c670e/components/sync/driver/proxy_data_type_controller.h
[modify] https://crrev.com/6dcda76d27564c8a9d854803762fa64bf62c670e/components/sync/driver/shared_change_processor_unittest.cc
[modify] https://crrev.com/6dcda76d27564c8a9d854803762fa64bf62c670e/components/sync/driver/startup_controller.cc
[modify] https://crrev.com/6dcda76d27564c8a9d854803762fa64bf62c670e/components/sync/driver/startup_controller.h
[modify] https://crrev.com/6dcda76d27564c8a9d854803762fa64bf62c670e/components/sync/driver/startup_controller_unittest.cc
[modify] https://crrev.com/6dcda76d27564c8a9d854803762fa64bf62c670e/components/sync/driver/sync_api_component_factory.h
[modify] https://crrev.com/6dcda76d27564c8a9d854803762fa64bf62c670e/components/sync/driver/sync_api_component_factory_mock.h
[modify] https://crrev.com/6dcda76d27564c8a9d854803762fa64bf62c670e/components/sync/driver/sync_service.h
[add] https://crrev.com/6dcda76d27564c8a9d854803762fa64bf62c670e/components/sync/engine/fake_sync_engine.cc
[rename] https://crrev.com/6dcda76d27564c8a9d854803762fa64bf62c670e/components/sync/engine/fake_sync_engine.h
[rename] https://crrev.com/6dcda76d27564c8a9d854803762fa64bf62c670e/components/sync/engine/model_type_configurer.cc
[rename] https://crrev.com/6dcda76d27564c8a9d854803762fa64bf62c670e/components/sync/engine/model_type_configurer.h
[rename] https://crrev.com/6dcda76d27564c8a9d854803762fa64bf62c670e/components/sync/engine/sync_engine.cc
[rename] https://crrev.com/6dcda76d27564c8a9d854803762fa64bf62c670e/components/sync/engine/sync_engine.h
[rename] https://crrev.com/6dcda76d27564c8a9d854803762fa64bf62c670e/components/sync/engine/sync_engine_host.cc
[rename] https://crrev.com/6dcda76d27564c8a9d854803762fa64bf62c670e/components/sync/engine/sync_engine_host.h
[modify] https://crrev.com/6dcda76d27564c8a9d854803762fa64bf62c670e/components/sync/syncable/test_user_share.h
[modify] https://crrev.com/6dcda76d27564c8a9d854803762fa64bf62c670e/tools/metrics/histograms/histograms.xml

Project Member

Comment 4 by bugdroid1@chromium.org, Dec 6 2016

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

commit 6b6f9f439dbd12d64de217f52dfe6b6c1af47291
Author: maxbogue <maxbogue@chromium.org>
Date: Mon Dec 05 23:59:14 2016

[Sync] SyncEngine 1.5: Fix all backend references in PSS.

There were a lot so I made a separate CL.

BUG= 669967 
TBR=nyquist,pam,rajendrant

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

[modify] https://crrev.com/6b6f9f439dbd12d64de217f52dfe6b6c1af47291/chrome/android/java/src/org/chromium/chrome/browser/gsa/ContextReporter.java
[modify] https://crrev.com/6b6f9f439dbd12d64de217f52dfe6b6c1af47291/chrome/android/java/src/org/chromium/chrome/browser/precache/PrecacheLauncher.java
[modify] https://crrev.com/6b6f9f439dbd12d64de217f52dfe6b6c1af47291/chrome/android/java/src/org/chromium/chrome/browser/preferences/MainPreferences.java
[modify] https://crrev.com/6b6f9f439dbd12d64de217f52dfe6b6c1af47291/chrome/android/java/src/org/chromium/chrome/browser/sync/GmsCoreSyncListener.java
[modify] https://crrev.com/6b6f9f439dbd12d64de217f52dfe6b6c1af47291/chrome/android/java/src/org/chromium/chrome/browser/sync/ProfileSyncService.java
[modify] https://crrev.com/6b6f9f439dbd12d64de217f52dfe6b6c1af47291/chrome/android/java/src/org/chromium/chrome/browser/sync/SyncController.java
[modify] https://crrev.com/6b6f9f439dbd12d64de217f52dfe6b6c1af47291/chrome/android/java/src/org/chromium/chrome/browser/sync/SyncNotificationController.java
[modify] https://crrev.com/6b6f9f439dbd12d64de217f52dfe6b6c1af47291/chrome/android/java/src/org/chromium/chrome/browser/sync/ui/PassphraseActivity.java
[modify] https://crrev.com/6b6f9f439dbd12d64de217f52dfe6b6c1af47291/chrome/android/java/src/org/chromium/chrome/browser/sync/ui/SyncCustomizationFragment.java
[modify] https://crrev.com/6b6f9f439dbd12d64de217f52dfe6b6c1af47291/chrome/android/javatests/src/org/chromium/chrome/browser/precache/PrecacheLauncherTest.java
[modify] https://crrev.com/6b6f9f439dbd12d64de217f52dfe6b6c1af47291/chrome/android/javatests/src/org/chromium/chrome/browser/preferences/PasswordViewingTypeTest.java
[modify] https://crrev.com/6b6f9f439dbd12d64de217f52dfe6b6c1af47291/chrome/android/javatests/src/org/chromium/chrome/browser/sync/FakeProfileSyncService.java
[modify] https://crrev.com/6b6f9f439dbd12d64de217f52dfe6b6c1af47291/chrome/android/javatests/src/org/chromium/chrome/browser/sync/ui/PassphraseActivityTest.java
[modify] https://crrev.com/6b6f9f439dbd12d64de217f52dfe6b6c1af47291/chrome/android/sync_shell/javatests/src/org/chromium/chrome/browser/sync/FirstRunTest.java
[modify] https://crrev.com/6b6f9f439dbd12d64de217f52dfe6b6c1af47291/chrome/android/sync_shell/javatests/src/org/chromium/chrome/browser/sync/SyncCustomizationFragmentTest.java
[modify] https://crrev.com/6b6f9f439dbd12d64de217f52dfe6b6c1af47291/chrome/browser/supervised_user/supervised_user_service.cc
[modify] https://crrev.com/6b6f9f439dbd12d64de217f52dfe6b6c1af47291/chrome/browser/sync/profile_sync_service_android.cc
[modify] https://crrev.com/6b6f9f439dbd12d64de217f52dfe6b6c1af47291/chrome/browser/sync/profile_sync_service_android.h
[modify] https://crrev.com/6b6f9f439dbd12d64de217f52dfe6b6c1af47291/chrome/browser/sync/sync_startup_tracker.cc
[modify] https://crrev.com/6b6f9f439dbd12d64de217f52dfe6b6c1af47291/chrome/browser/sync/sync_startup_tracker_unittest.cc
[modify] https://crrev.com/6b6f9f439dbd12d64de217f52dfe6b6c1af47291/chrome/browser/sync/test/integration/profile_sync_service_harness.cc
[modify] https://crrev.com/6b6f9f439dbd12d64de217f52dfe6b6c1af47291/chrome/browser/sync/test/integration/profile_sync_service_harness.h
[modify] https://crrev.com/6b6f9f439dbd12d64de217f52dfe6b6c1af47291/chrome/browser/sync/test/integration/single_client_supervised_user_settings_sync_test.cc
[modify] https://crrev.com/6b6f9f439dbd12d64de217f52dfe6b6c1af47291/chrome/browser/sync/test/integration/sync_errors_test.cc
[modify] https://crrev.com/6b6f9f439dbd12d64de217f52dfe6b6c1af47291/chrome/browser/ui/webui/options/sync_setup_handler.cc
[modify] https://crrev.com/6b6f9f439dbd12d64de217f52dfe6b6c1af47291/chrome/browser/ui/webui/options/sync_setup_handler.h
[modify] https://crrev.com/6b6f9f439dbd12d64de217f52dfe6b6c1af47291/chrome/browser/ui/webui/options/sync_setup_handler_unittest.cc
[modify] https://crrev.com/6b6f9f439dbd12d64de217f52dfe6b6c1af47291/chrome/browser/ui/webui/settings/people_handler.cc
[modify] https://crrev.com/6b6f9f439dbd12d64de217f52dfe6b6c1af47291/chrome/browser/ui/webui/settings/people_handler.h
[modify] https://crrev.com/6b6f9f439dbd12d64de217f52dfe6b6c1af47291/chrome/browser/ui/webui/settings/people_handler_unittest.cc
[modify] https://crrev.com/6b6f9f439dbd12d64de217f52dfe6b6c1af47291/chrome/test/android/javatests/src/org/chromium/chrome/test/util/browser/sync/SyncTestUtil.java
[modify] https://crrev.com/6b6f9f439dbd12d64de217f52dfe6b6c1af47291/components/autofill/core/browser/autofill_experiments.cc
[modify] https://crrev.com/6b6f9f439dbd12d64de217f52dfe6b6c1af47291/components/browser_sync/profile_sync_service.cc
[modify] https://crrev.com/6b6f9f439dbd12d64de217f52dfe6b6c1af47291/components/browser_sync/profile_sync_service.h
[modify] https://crrev.com/6b6f9f439dbd12d64de217f52dfe6b6c1af47291/components/browser_sync/profile_sync_service_mock.h
[modify] https://crrev.com/6b6f9f439dbd12d64de217f52dfe6b6c1af47291/components/browser_sync/profile_sync_service_startup_unittest.cc
[modify] https://crrev.com/6b6f9f439dbd12d64de217f52dfe6b6c1af47291/components/browser_sync/test_profile_sync_service.cc
[modify] https://crrev.com/6b6f9f439dbd12d64de217f52dfe6b6c1af47291/components/precache/content/precache_manager.cc
[modify] https://crrev.com/6b6f9f439dbd12d64de217f52dfe6b6c1af47291/components/sync/driver/about_sync_util.cc
[modify] https://crrev.com/6b6f9f439dbd12d64de217f52dfe6b6c1af47291/components/sync/driver/fake_sync_service.cc
[modify] https://crrev.com/6b6f9f439dbd12d64de217f52dfe6b6c1af47291/components/sync/driver/fake_sync_service.h
[modify] https://crrev.com/6b6f9f439dbd12d64de217f52dfe6b6c1af47291/components/sync/driver/glue/sync_backend_host_core.h
[modify] https://crrev.com/6b6f9f439dbd12d64de217f52dfe6b6c1af47291/components/sync/driver/glue/sync_backend_host_impl.cc
[modify] https://crrev.com/6b6f9f439dbd12d64de217f52dfe6b6c1af47291/components/sync/driver/glue/sync_backend_host_impl_unittest.cc
[modify] https://crrev.com/6b6f9f439dbd12d64de217f52dfe6b6c1af47291/components/sync/driver/sync_service.h
[modify] https://crrev.com/6b6f9f439dbd12d64de217f52dfe6b6c1af47291/components/sync/engine/fake_sync_engine.cc
[modify] https://crrev.com/6b6f9f439dbd12d64de217f52dfe6b6c1af47291/components/sync/engine/sync_engine_host.h

Project Member

Comment 6 by bugdroid1@chromium.org, Dec 14 2016

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

commit fa5a4db658dda186eedfd7b5989f9b2abbe48c8f
Author: maxbogue <maxbogue@chromium.org>
Date: Wed Dec 14 21:06:16 2016

[Sync] SyncEngine refactor part 2: SyncServiceBase.

This change introduces SyncServiceBase as a base class of PSS and
consolidates engine initialization logic into it from PSS and SBHI.

This new class will enable us to siphon logic out of SBHI until it can
become SyncEngineProxy (no business logic). This change also begins
aligning SBHC with the SyncEngine interface, so it can eventually become
SyncEngineImpl.

BUG= 669967 

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

[modify] https://crrev.com/fa5a4db658dda186eedfd7b5989f9b2abbe48c8f/components/browser_sync/abstract_profile_sync_service_test.cc
[modify] https://crrev.com/fa5a4db658dda186eedfd7b5989f9b2abbe48c8f/components/browser_sync/profile_sync_service.cc
[modify] https://crrev.com/fa5a4db658dda186eedfd7b5989f9b2abbe48c8f/components/browser_sync/profile_sync_service.h
[modify] https://crrev.com/fa5a4db658dda186eedfd7b5989f9b2abbe48c8f/components/browser_sync/profile_sync_service_unittest.cc
[modify] https://crrev.com/fa5a4db658dda186eedfd7b5989f9b2abbe48c8f/components/sync/BUILD.gn
[modify] https://crrev.com/fa5a4db658dda186eedfd7b5989f9b2abbe48c8f/components/sync/driver/DEPS
[modify] https://crrev.com/fa5a4db658dda186eedfd7b5989f9b2abbe48c8f/components/sync/driver/glue/sync_backend_host_core.cc
[modify] https://crrev.com/fa5a4db658dda186eedfd7b5989f9b2abbe48c8f/components/sync/driver/glue/sync_backend_host_core.h
[modify] https://crrev.com/fa5a4db658dda186eedfd7b5989f9b2abbe48c8f/components/sync/driver/glue/sync_backend_host_impl.cc
[modify] https://crrev.com/fa5a4db658dda186eedfd7b5989f9b2abbe48c8f/components/sync/driver/glue/sync_backend_host_impl.h
[modify] https://crrev.com/fa5a4db658dda186eedfd7b5989f9b2abbe48c8f/components/sync/driver/glue/sync_backend_host_impl_unittest.cc
[add] https://crrev.com/fa5a4db658dda186eedfd7b5989f9b2abbe48c8f/components/sync/driver/sync_service_base.cc
[add] https://crrev.com/fa5a4db658dda186eedfd7b5989f9b2abbe48c8f/components/sync/driver/sync_service_base.h
[modify] https://crrev.com/fa5a4db658dda186eedfd7b5989f9b2abbe48c8f/components/sync/engine/fake_sync_engine.cc
[modify] https://crrev.com/fa5a4db658dda186eedfd7b5989f9b2abbe48c8f/components/sync/engine/fake_sync_engine.h
[modify] https://crrev.com/fa5a4db658dda186eedfd7b5989f9b2abbe48c8f/components/sync/engine/sync_engine.cc
[modify] https://crrev.com/fa5a4db658dda186eedfd7b5989f9b2abbe48c8f/components/sync/engine/sync_engine.h
[modify] https://crrev.com/fa5a4db658dda186eedfd7b5989f9b2abbe48c8f/components/sync/test/fake_server/fake_server_network_resources.cc
[modify] https://crrev.com/fa5a4db658dda186eedfd7b5989f9b2abbe48c8f/components/sync/test/fake_server/fake_server_network_resources.h

Project Member

Comment 8 by bugdroid1@chromium.org, Jan 9 2017

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

commit 82712717bb8f87ad7cc66e831d61d5fcb5352053
Author: maxbogue <maxbogue@chromium.org>
Date: Mon Jan 09 22:22:08 2017

[Sync] Move ConfigureDataTypes logic into DataTypeManagerImpl.

This is good because it sets the stage for refactoring this logic and
testing it better, but it's bad because it reveals the full extent of
our sins with respect to the current state of the code.

The primary functional change is that DTMI tracks the set of types it
thinks the engine knows are... downloaded? Configured? Whatever the
types in SyncBackendRegistrar's routing info represented before. Now it
has a copy on the UI thread that it works with, and SBR's
ConfigureDataTypes is no longer called from the UI thread.

BUG= 669967 , 663125 

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

[modify] https://crrev.com/82712717bb8f87ad7cc66e831d61d5fcb5352053/components/browser_sync/abstract_profile_sync_service_test.cc
[modify] https://crrev.com/82712717bb8f87ad7cc66e831d61d5fcb5352053/components/sync/BUILD.gn
[modify] https://crrev.com/82712717bb8f87ad7cc66e831d61d5fcb5352053/components/sync/driver/data_type_controller.h
[modify] https://crrev.com/82712717bb8f87ad7cc66e831d61d5fcb5352053/components/sync/driver/data_type_manager_impl.cc
[modify] https://crrev.com/82712717bb8f87ad7cc66e831d61d5fcb5352053/components/sync/driver/data_type_manager_impl.h
[modify] https://crrev.com/82712717bb8f87ad7cc66e831d61d5fcb5352053/components/sync/driver/data_type_manager_impl_unittest.cc
[modify] https://crrev.com/82712717bb8f87ad7cc66e831d61d5fcb5352053/components/sync/driver/directory_data_type_controller.cc
[modify] https://crrev.com/82712717bb8f87ad7cc66e831d61d5fcb5352053/components/sync/driver/directory_data_type_controller.h
[modify] https://crrev.com/82712717bb8f87ad7cc66e831d61d5fcb5352053/components/sync/driver/fake_data_type_controller.cc
[modify] https://crrev.com/82712717bb8f87ad7cc66e831d61d5fcb5352053/components/sync/driver/fake_data_type_controller.h
[modify] https://crrev.com/82712717bb8f87ad7cc66e831d61d5fcb5352053/components/sync/driver/glue/sync_backend_host_core.cc
[modify] https://crrev.com/82712717bb8f87ad7cc66e831d61d5fcb5352053/components/sync/driver/glue/sync_backend_host_core.h
[modify] https://crrev.com/82712717bb8f87ad7cc66e831d61d5fcb5352053/components/sync/driver/glue/sync_backend_host_impl.cc
[modify] https://crrev.com/82712717bb8f87ad7cc66e831d61d5fcb5352053/components/sync/driver/glue/sync_backend_host_impl.h
[modify] https://crrev.com/82712717bb8f87ad7cc66e831d61d5fcb5352053/components/sync/driver/glue/sync_backend_host_impl_unittest.cc
[modify] https://crrev.com/82712717bb8f87ad7cc66e831d61d5fcb5352053/components/sync/driver/model_type_controller.cc
[modify] https://crrev.com/82712717bb8f87ad7cc66e831d61d5fcb5352053/components/sync/driver/model_type_controller.h
[modify] https://crrev.com/82712717bb8f87ad7cc66e831d61d5fcb5352053/components/sync/driver/model_type_controller_unittest.cc
[modify] https://crrev.com/82712717bb8f87ad7cc66e831d61d5fcb5352053/components/sync/driver/proxy_data_type_controller.cc
[modify] https://crrev.com/82712717bb8f87ad7cc66e831d61d5fcb5352053/components/sync/driver/proxy_data_type_controller.h
[modify] https://crrev.com/82712717bb8f87ad7cc66e831d61d5fcb5352053/components/sync/engine/fake_sync_engine.cc
[modify] https://crrev.com/82712717bb8f87ad7cc66e831d61d5fcb5352053/components/sync/engine/fake_sync_engine.h
[modify] https://crrev.com/82712717bb8f87ad7cc66e831d61d5fcb5352053/components/sync/engine/model_type_configurer.cc
[modify] https://crrev.com/82712717bb8f87ad7cc66e831d61d5fcb5352053/components/sync/engine/model_type_configurer.h
[modify] https://crrev.com/82712717bb8f87ad7cc66e831d61d5fcb5352053/components/sync/engine/sync_engine.h
[add] https://crrev.com/82712717bb8f87ad7cc66e831d61d5fcb5352053/components/sync/engine/sync_engine_host_stub.cc
[add] https://crrev.com/82712717bb8f87ad7cc66e831d61d5fcb5352053/components/sync/engine/sync_engine_host_stub.h

Project Member

Comment 9 by bugdroid1@chromium.org, Jan 13 2017

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

commit cbd47621a175445abb1ad2c96e66b98fc8b93eba
Author: maxbogue <maxbogue@chromium.org>
Date: Fri Jan 13 04:24:17 2017

[Sync] Move snapshot cache from SBHI to PSS.

This is part of an effort to remove all business logic from SBHI.

BUG= 669967 

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

[modify] https://crrev.com/cbd47621a175445abb1ad2c96e66b98fc8b93eba/components/browser_sync/profile_sync_service.cc
[modify] https://crrev.com/cbd47621a175445abb1ad2c96e66b98fc8b93eba/components/browser_sync/profile_sync_service.h
[modify] https://crrev.com/cbd47621a175445abb1ad2c96e66b98fc8b93eba/components/browser_sync/profile_sync_service_mock.h
[modify] https://crrev.com/cbd47621a175445abb1ad2c96e66b98fc8b93eba/components/browser_sync/profile_sync_service_unittest.cc
[modify] https://crrev.com/cbd47621a175445abb1ad2c96e66b98fc8b93eba/components/sync/driver/glue/sync_backend_host_impl.cc
[modify] https://crrev.com/cbd47621a175445abb1ad2c96e66b98fc8b93eba/components/sync/driver/glue/sync_backend_host_impl.h
[modify] https://crrev.com/cbd47621a175445abb1ad2c96e66b98fc8b93eba/components/sync/engine/fake_sync_engine.cc
[modify] https://crrev.com/cbd47621a175445abb1ad2c96e66b98fc8b93eba/components/sync/engine/fake_sync_engine.h
[modify] https://crrev.com/cbd47621a175445abb1ad2c96e66b98fc8b93eba/components/sync/engine/sync_engine.h
[modify] https://crrev.com/cbd47621a175445abb1ad2c96e66b98fc8b93eba/components/sync/engine/sync_engine_host.h
[modify] https://crrev.com/cbd47621a175445abb1ad2c96e66b98fc8b93eba/components/sync/engine/sync_engine_host_stub.cc
[modify] https://crrev.com/cbd47621a175445abb1ad2c96e66b98fc8b93eba/components/sync/engine/sync_engine_host_stub.h

Blockedon: 685337
Cc: maxbogue@chromium.org
Owner: pav...@chromium.org
Status: Assigned (was: Started)
Pavel, you can decide what to do with this one. SBHC is very close to being able to implement SyncEngine; the only real blockers are the things that SBHI implements but SBHC doesn't, which is primarily the ModelTypeConfigurer interface. If that could be refactored to point directly to ModelTypeRegistry or to proxy calls to the sync thread via SBHC, I think it would be doable.
Status: WontFix (was: Assigned)

Sign in to add a comment