[USS] ModelType errors during initialization hit DCHECKs |
||
Issue description1. Force DeviceInfo to error before providing metadata. Such as editing DeviceInfoService::OnStoreCreated to always hit the else. 2. DCHECK is hit at https://cs.chromium.org/chromium/src/components/sync/driver/model_type_controller.cc?l=171 . Correctness is unclear to me. We failed to start, so stop was called. 3. If you comment out the above check, we hit another one at https://cs.chromium.org/chromium/src/components/sync/driver/model_type_controller.cc?q=model_type_controller.cc&sq=package:chromium&dr&l=136 . This is because of the disconnnect between the ModelAssociationManager and DataTypeManagerImpl. The MAM knows this type fails, and it removes it from |desired_types_|. But the DTMI doesn't get the memo, it's still in |last_enabled_types_|, so it tells the controller to RegisterWithBackend.
,
Oct 25 2016
My understanding is that Pavel's change fixes what I described as 3., but not 2.
,
Nov 3 2016
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/9a4c395dd213a7ecbf0213924c213403aefc6a31 commit 9a4c395dd213a7ecbf0213924c213403aefc6a31 Author: pavely <pavely@chromium.org> Date: Thu Nov 03 00:58:19 2016 [Sync] Make ModelTypeController::DeactivateDataType idempotent The issue is that ModelAssociationManager::StopDatatype() always calls DeactivateDataType before Stop. It causes DCHECK if type wasn't previously activated. DirectoryDataTypeController::Deactivate is already idempotent, this change is to mirror this behavior for USS type. Proper fix is to update controller's state during activation and not call Deactivate when not needed, but this change is more involved. BUG= 658443 R=maxbogue@chromium.org Review-Url: https://codereview.chromium.org/2471943002 Cr-Commit-Position: refs/heads/master@{#429487} [modify] https://crrev.com/9a4c395dd213a7ecbf0213924c213403aefc6a31/components/sync/driver/model_type_controller.cc [modify] https://crrev.com/9a4c395dd213a7ecbf0213924c213403aefc6a31/components/sync/driver/model_type_controller_unittest.cc
,
Nov 3 2016
|
||
►
Sign in to add a comment |
||
Comment 1 by bugdroid1@chromium.org
, Oct 25 2016