USS: Conflict resolution should ignore local and remote encryption changes |
||
Issue descriptionWhen a conflict is detected, we should be able to determine whether either entity is simply for encryption and choose the one that is a real change. To do this we will need to maintain a base_specifics_hash that represents the last specifics data shared between the client and the server. To have this value always available we might have to pass a hash through the CommitContributor (so we know the hash of the data that is being acked in a CommitResponse), but even without that most cases should be coverable.
,
May 3 2016
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/fdd1e5807dd62e08448012773750efe44ecd21bd commit fdd1e5807dd62e08448012773750efe44ecd21bd Author: maxbogue <maxbogue@chromium.org> Date: Tue May 03 18:41:24 2016 [Sync] USS: Ignore encryption changes during conflict resolution 2/2 The change plumbs the specifics hash through the worker so it comes back with the commit response. Originally I intended to pass it through the commit contribution like the sequence number, but after some thought I realized that wasn't even necessary for the sequence number so I've modified the flow to simplify the commit contribution. BUG= 605708 Review-Url: https://codereview.chromium.org/1933803002 Cr-Commit-Position: refs/heads/master@{#391308} [modify] https://crrev.com/fdd1e5807dd62e08448012773750efe44ecd21bd/sync/engine/model_type_worker.cc [modify] https://crrev.com/fdd1e5807dd62e08448012773750efe44ecd21bd/sync/engine/model_type_worker.h [modify] https://crrev.com/fdd1e5807dd62e08448012773750efe44ecd21bd/sync/engine/model_type_worker_unittest.cc [modify] https://crrev.com/fdd1e5807dd62e08448012773750efe44ecd21bd/sync/engine/non_blocking_type_commit_contribution.cc [modify] https://crrev.com/fdd1e5807dd62e08448012773750efe44ecd21bd/sync/engine/non_blocking_type_commit_contribution.h [modify] https://crrev.com/fdd1e5807dd62e08448012773750efe44ecd21bd/sync/engine/worker_entity_tracker.cc [modify] https://crrev.com/fdd1e5807dd62e08448012773750efe44ecd21bd/sync/engine/worker_entity_tracker.h [modify] https://crrev.com/fdd1e5807dd62e08448012773750efe44ecd21bd/sync/engine/worker_entity_tracker_unittest.cc [modify] https://crrev.com/fdd1e5807dd62e08448012773750efe44ecd21bd/sync/test/engine/mock_model_type_processor.cc
,
May 3 2016
|
||
►
Sign in to add a comment |
||
Comment 1 by bugdroid1@chromium.org
, Apr 27 2016