diff options
author | rlarocque@chromium.org <rlarocque@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-10-26 07:53:18 +0000 |
---|---|---|
committer | rlarocque@chromium.org <rlarocque@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-10-26 07:53:18 +0000 |
commit | 6257f156dea69ea3140b46b5fb7ff74bfc74535b (patch) | |
tree | 73a1e3dc60552c815a22a31b5489d49fae4a5120 /sync/internal_api/js_sync_manager_observer.cc | |
parent | 5e6e992032bc3e13383ef8631e573596e4e85ab3 (diff) | |
download | chromium_src-6257f156dea69ea3140b46b5fb7ff74bfc74535b.zip chromium_src-6257f156dea69ea3140b46b5fb7ff74bfc74535b.tar.gz chromium_src-6257f156dea69ea3140b46b5fb7ff74bfc74535b.tar.bz2 |
sync: Merge apply updates and resolve conflicts
The conflict resolution code was executed after the commit for reasons
which no longer apply. Because we no longer have to worry about
resolving hierarchy conflicts or nigori node conflicts, we have the
opportunity to move conflict resolution closer to update application.
One advantage of resolving conflicts early is that we no longer require
an extra sync cycle to commit any 'local wins' conflict resolutions.
This makes SYNC_CYCLE_CONTINUATION sync cycles obsolete.
Another advantage is that update application and conflict resolution can
be performed without releasing the sync lock, which eliminates several
types of races that we used to have to worry about. It's probably more
efficient, too.
It allows us to guarantee that there are no simple conflicts remaining
after the update application step is completed. The effects might not
be very noticeable to end users, but it will be nice to remove some of
the conflict tracking code.
Finally, it removes the last use PerModelSafeGroupState. This will let
us delete some unused code and hopefully simplify StatusController.
This patch does not pursue these cleanups as agressively as it could.
The idea here is to keep the complex logic changes in one small CL, and
perform the cleanups in a larger, but simpler, follow-up CL.
BUG=147681,11280,156238
Review URL: https://chromiumcodereview.appspot.com/11192071
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@164286 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'sync/internal_api/js_sync_manager_observer.cc')
-rw-r--r-- | sync/internal_api/js_sync_manager_observer.cc | 1 |
1 files changed, 0 insertions, 1 deletions
diff --git a/sync/internal_api/js_sync_manager_observer.cc b/sync/internal_api/js_sync_manager_observer.cc index dd7c7a9..d60d5e0 100644 --- a/sync/internal_api/js_sync_manager_observer.cc +++ b/sync/internal_api/js_sync_manager_observer.cc @@ -17,7 +17,6 @@ #include "sync/js/js_arg_list.h" #include "sync/js/js_event_details.h" #include "sync/js/js_event_handler.h" -#include "sync/sessions/session_state.h" namespace syncer { |