summaryrefslogtreecommitdiffstats
path: root/sync/internal_api/js_sync_manager_observer.cc
diff options
context:
space:
mode:
authorrlarocque@chromium.org <rlarocque@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-10-26 07:53:18 +0000
committerrlarocque@chromium.org <rlarocque@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-10-26 07:53:18 +0000
commit6257f156dea69ea3140b46b5fb7ff74bfc74535b (patch)
tree73a1e3dc60552c815a22a31b5489d49fae4a5120 /sync/internal_api/js_sync_manager_observer.cc
parent5e6e992032bc3e13383ef8631e573596e4e85ab3 (diff)
downloadchromium_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.cc1
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 {