commit | 13ef1e88dccf70d608587e641d472a040f371ba8 | [log] [tgz] |
---|---|---|
author | Tim Schumann <tschumann@chromium.org> | Wed May 30 01:37:15 2018 |
committer | Commit Bot <commit-bot@chromium.org> | Wed May 30 01:37:15 2018 |
tree | c3aa960835bb1cd99faee892a3da4dbe354826be | |
parent | 7c7847f69de403f6c798dfccba10812039a60480 [diff] |
Reland "Support late registration of syncable preferences." Sync integration tests where flaky on some platforms. Fixed those integration tests by enabling self-notifications and only modifying one client (and not the verifier as well). Inspected try-bot runs from two executions verifying no flakes. Original CL description: Support late registration of syncable preferences. Today, there's already a race when registering a preference through the mojo preference service: the asynchronous registration call might be slower than starting sync. As more services are being implemented, those scenarios are getting more likely -- especially as services could be started at arbitrary times. Before this path, the synced preferences implementation did not support this scenario. This patch changes the synced preference implementation to receive and persist remote data for preferences before they get registered. Currently, this only applies for a whitelisted set of preferences. More details about the approach can be found in the design doc linked from the crbug/840332. Bug: 840332 Change-Id: I5fd2883d403b961a6332d7ee7bcdbad72f5cab8f Reviewed-on: https://chromium-review.googlesource.com/1074688 Reviewed-by: Ilya Sherman <isherman@chromium.org> Reviewed-by: Dominic Battré <battre@chromium.org> Reviewed-by: Marc Treib <treib@chromium.org> Commit-Queue: Tim Schumann <tschumann@chromium.org> Cr-Commit-Position: refs/heads/master@{#562689}
Chromium is an open-source browser project that aims to build a safer, faster, and more stable way for all users to experience the web.
The project's web site is https://www.chromium.org.
Documentation in the source is rooted in docs/README.md.
Learn how to Get Around the Chromium Source Code Directory Structure .