Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(185)

Unified Diff: chrome/browser/sync/sessions/session_state.h

Issue 6104003: sync: use progress markers instead of timestamps during GetUpdates (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: For review Created 9 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/sync/sessions/session_state.h
diff --git a/chrome/browser/sync/sessions/session_state.h b/chrome/browser/sync/sessions/session_state.h
index aca18dcb1486919ae6817ce74a7ed90a5c5fed91..eb13ca2869233c737aac479b8d79a517bf4c5565 100644
--- a/chrome/browser/sync/sessions/session_state.h
+++ b/chrome/browser/sync/sessions/session_state.h
@@ -35,9 +35,13 @@ class UpdateProgress;
// Data pertaining to the status of an active Syncer object.
struct SyncerStatus {
SyncerStatus()
- : invalid_store(false), syncer_stuck(false),
- syncing(false), num_successful_commits(0),
- num_successful_bookmark_commits(0) {}
+ : invalid_store(false),
+ syncer_stuck(false),
+ syncing(false),
+ num_successful_commits(0),
+ num_successful_bookmark_commits(0),
+ num_updates_downloaded(0),
+ num_tombstone_updates_downloaded(0) {}
// True when we get such an INVALID_STORE error from the server.
bool invalid_store;
@@ -47,6 +51,10 @@ struct SyncerStatus {
int num_successful_commits;
// This is needed for monitoring extensions activity.
int num_successful_bookmark_commits;
+
+ // Download event counters.
tim (not reviewing) 2011/01/11 19:14:23 It looks like you update the counters at the same
ncarter (slow) 2011/01/13 00:06:13 Moving these to the UpdateProgress would require a
+ int num_updates_downloaded;
+ int num_tombstone_updates_downloaded;
};
// Counters for various errors that can occur repeatedly during a sync session.
@@ -69,25 +77,26 @@ struct ErrorCounters {
// An immutable snapshot of state from a SyncSession. Convenient to use as
// part of notifications as it is inherently thread-safe.
struct SyncSessionSnapshot {
- SyncSessionSnapshot(const SyncerStatus& syncer_status,
+ SyncSessionSnapshot(
+ const SyncerStatus& syncer_status,
const ErrorCounters& errors,
int64 num_server_changes_remaining,
- int64 max_local_timestamp,
bool is_share_usable,
const syncable::ModelTypeBitSet& initial_sync_ended,
+ std::string download_progress_markers[syncable::MODEL_TYPE_COUNT],
bool more_to_sync,
bool is_silenced,
int64 unsynced_count,
int num_conflicting_updates,
- bool did_commit_items);
+ bool did_commit_items);
~SyncSessionSnapshot();
const SyncerStatus syncer_status;
const ErrorCounters errors;
const int64 num_server_changes_remaining;
- const int64 max_local_timestamp;
const bool is_share_usable;
const syncable::ModelTypeBitSet initial_sync_ended;
+ const std::string download_progress_markers[syncable::MODEL_TYPE_COUNT];
const bool has_more_to_sync;
const bool is_silenced;
const int64 unsynced_count;
@@ -233,7 +242,7 @@ struct AllModelTypeState {
ClientToServerResponse commit_response;
// We GetUpdates for some combination of types at once.
// requested_update_types stores the set of types which were requested.
- syncable::MultiTypeTimeStamp updates_request_parameters;
+ syncable::ModelTypeBitSet updates_request_types;
ClientToServerResponse updates_response;
// Used to build the shared commit message.
DirtyOnWrite<std::vector<int64> > unsynced_handles;
@@ -257,8 +266,6 @@ struct PerModelSafeGroupState {
struct PerModelTypeState {
explicit PerModelTypeState(bool* dirty_flag);
~PerModelTypeState();
-
- DirtyOnWrite<int64> current_download_timestamp;
};
} // namespace sessions

Powered by Google App Engine
This is Rietveld 408576698