When a client receives a birthday update, it should be treated similarly as a signout from USS's perspective: sync metadata should be cleared.
During a discussion with pavely@, we weren't sure how this is implemented, or whether it is at all. We should verify.
Cc: mastiz@chromium.org Status: lixanyandex-team.ru (was: Assigned) Summary: Handle birthday updates properly for USS datatypes (was: Verify that USS datatypes handle birthday updates properly)
I've tested birthday updates locally and they don't seem to work well.
In the current implementation, ModelTypeController::Stop() gets called with CLEAR_METADATA. However, the controller currently ignores the provided CLEAR_METADATA and instead checks the presence in prefs to (incorrectly) decide that sync metadata shouldn't be cleared.
Assigning to lixan@ since he has a patch that would fix this problem: https://chromium-review.googlesource.com/c/chromium/src/+/1008303
That should be sufficient to close this bug. Somewhat related, the detection of birthday mismatches relies on Directory as a central database to store the local birthday, so we'd need to update that once all types get migrated to USS and we remove directory. However, that is far off and it warrants a dedicated bug.
Comment 1 by treib@chromium.org
, Apr 23 2018Status: Available (was: Untriaged)