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

Unified Diff: sync/syncable/syncable_columns.h

Issue 1258863007: [Sync] Add more info for invalid position check (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: remove change from directory since too much test failures Created 5 years, 4 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
« sync/syncable/entry_kernel.h ('K') | « sync/syncable/entry_kernel.cc ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: sync/syncable/syncable_columns.h
diff --git a/sync/syncable/syncable_columns.h b/sync/syncable/syncable_columns.h
index 8b3bd9ee10a00e18cd1c077816338db6bd6b8294..1c144a8e0a4088cc4be22e4c45a7d6d9b1f50f0c 100644
--- a/sync/syncable/syncable_columns.h
+++ b/sync/syncable/syncable_columns.h
@@ -5,12 +5,165 @@
#ifndef SYNC_SYNCABLE_SYNCABLE_COLUMNS_H_
#define SYNC_SYNCABLE_SYNCABLE_COLUMNS_H_
-#include "sync/syncable/entry_kernel.h"
#include "sync/syncable/syncable_changes_version.h"
namespace syncer {
namespace syncable {
+enum {
stanisc 2015/08/07 18:24:04 This is an unnecessary change. I'd prefer to keep
Gang Wu 2015/08/07 20:50:57 Done.
+ BEGIN_FIELDS = 0,
+ INT64_FIELDS_BEGIN = BEGIN_FIELDS
+};
+
+enum MetahandleField {
+ // Primary key into the table. Keep this as a handle to the meta entry
+ // across transactions.
+ META_HANDLE = INT64_FIELDS_BEGIN
+};
+
+enum BaseVersion {
+ // After initial upload, the version is controlled by the server, and is
+ // increased whenever the data or metadata changes on the server.
+ BASE_VERSION = META_HANDLE + 1,
+};
+
+enum Int64Field {
+ SERVER_VERSION = BASE_VERSION + 1,
+ LOCAL_EXTERNAL_ID, // ID of an item in the external local storage that this
+ // entry is associated with. (such as bookmarks.js)
+ TRANSACTION_VERSION,
+ INT64_FIELDS_END
+};
+
+enum {
+ INT64_FIELDS_COUNT = INT64_FIELDS_END - INT64_FIELDS_BEGIN,
+ TIME_FIELDS_BEGIN = INT64_FIELDS_END,
+};
+
+enum TimeField {
+ MTIME = TIME_FIELDS_BEGIN,
+ SERVER_MTIME,
+ CTIME,
+ SERVER_CTIME,
+ TIME_FIELDS_END,
+};
+
+enum {
+ TIME_FIELDS_COUNT = TIME_FIELDS_END - TIME_FIELDS_BEGIN,
+ ID_FIELDS_BEGIN = TIME_FIELDS_END,
+};
+
+enum IdField {
+ // Code in InitializeTables relies on ID being the first IdField value.
+ ID = ID_FIELDS_BEGIN,
+ PARENT_ID,
+ SERVER_PARENT_ID,
+ ID_FIELDS_END
+};
+
+enum {
+ ID_FIELDS_COUNT = ID_FIELDS_END - ID_FIELDS_BEGIN,
+ BIT_FIELDS_BEGIN = ID_FIELDS_END
+};
+
+enum IndexedBitField {
+ IS_UNSYNCED = BIT_FIELDS_BEGIN,
+ IS_UNAPPLIED_UPDATE,
+ INDEXED_BIT_FIELDS_END,
+};
+
+enum IsDelField {
+ IS_DEL = INDEXED_BIT_FIELDS_END,
+};
+
+enum BitField {
+ IS_DIR = IS_DEL + 1,
+ SERVER_IS_DIR,
+ SERVER_IS_DEL,
+ BIT_FIELDS_END
+};
+
+enum {
+ BIT_FIELDS_COUNT = BIT_FIELDS_END - BIT_FIELDS_BEGIN,
+ STRING_FIELDS_BEGIN = BIT_FIELDS_END
+};
+
+enum StringField {
+ // Name, will be truncated by server. Can be duplicated in a folder.
+ NON_UNIQUE_NAME = STRING_FIELDS_BEGIN,
+ // The server version of |NON_UNIQUE_NAME|.
+ SERVER_NON_UNIQUE_NAME,
+
+ // A tag string which identifies this node as a particular top-level
+ // permanent object. The tag can be thought of as a unique key that
+ // identifies a singleton instance.
+ UNIQUE_SERVER_TAG, // Tagged by the server
+ UNIQUE_CLIENT_TAG, // Tagged by the client
+ UNIQUE_BOOKMARK_TAG, // Client tags for bookmark items
+ STRING_FIELDS_END,
+};
+
+enum {
+ STRING_FIELDS_COUNT = STRING_FIELDS_END - STRING_FIELDS_BEGIN,
+ PROTO_FIELDS_BEGIN = STRING_FIELDS_END
+};
+
+// From looking at the sqlite3 docs, it's not directly stated, but it
+// seems the overhead for storing a NULL blob is very small.
+enum ProtoField {
+ SPECIFICS = PROTO_FIELDS_BEGIN,
+ SERVER_SPECIFICS,
+ BASE_SERVER_SPECIFICS,
+ PROTO_FIELDS_END,
+};
+
+enum {
+ PROTO_FIELDS_COUNT = PROTO_FIELDS_END - PROTO_FIELDS_BEGIN,
+ UNIQUE_POSITION_FIELDS_BEGIN = PROTO_FIELDS_END
+};
+
+enum UniquePositionField {
+ SERVER_UNIQUE_POSITION = UNIQUE_POSITION_FIELDS_BEGIN,
+ UNIQUE_POSITION,
+ UNIQUE_POSITION_FIELDS_END
+};
+
+enum {
+ UNIQUE_POSITION_FIELDS_COUNT =
+ UNIQUE_POSITION_FIELDS_END - UNIQUE_POSITION_FIELDS_BEGIN,
+ ATTACHMENT_METADATA_FIELDS_BEGIN = UNIQUE_POSITION_FIELDS_END
+};
+
+enum AttachmentMetadataField {
+ ATTACHMENT_METADATA = ATTACHMENT_METADATA_FIELDS_BEGIN,
+ SERVER_ATTACHMENT_METADATA,
+ ATTACHMENT_METADATA_FIELDS_END
+};
+
+enum {
+ ATTACHMENT_METADATA_FIELDS_COUNT =
+ ATTACHMENT_METADATA_FIELDS_END - ATTACHMENT_METADATA_FIELDS_BEGIN,
+ FIELD_COUNT = ATTACHMENT_METADATA_FIELDS_END - BEGIN_FIELDS,
+ // Past this point we have temporaries, stored in memory only.
+ BEGIN_TEMPS = ATTACHMENT_METADATA_FIELDS_END,
+ BIT_TEMPS_BEGIN = BEGIN_TEMPS,
+};
+
+enum BitTemp {
+ // Whether a server commit operation was started and has not yet completed
+ // for this entity.
+ SYNCING = BIT_TEMPS_BEGIN,
+ // Whether a local change was made to an entity that had SYNCING set to true,
+ // and was therefore in the middle of a commit operation.
+ // Note: must only be set if SYNCING is true.
+ DIRTY_SYNC,
+ BIT_TEMPS_END,
+};
+
+enum {
+ BIT_TEMPS_COUNT = BIT_TEMPS_END - BIT_TEMPS_BEGIN
+};
+
struct ColumnSpec {
const char* name;
const char* spec;
« sync/syncable/entry_kernel.h ('K') | « sync/syncable/entry_kernel.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698