1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5 #ifndef SYNC_SYNCABLE_SYNCABLE_CHANGES_VERSION_H_ 6 #define SYNC_SYNCABLE_SYNCABLE_CHANGES_VERSION_H_ 7 8 namespace syncer { 9 namespace syncable { 10 11 // For the most part, the sync engine treats version numbers as opaque values. 12 // However, there are parts of our code base that break this abstraction, and 13 // depend on the following two invariants: 14 // 15 // 1. CHANGES_VERSION is less than 0. 16 // 2. The server only issues positive version numbers. 17 // 18 // Breaking these abstractions makes some operations 10 times 19 // faster. If either of these invariants change, then those queries 20 // must be revisited. 21 22 enum { 23 CHANGES_VERSION = -1 24 }; 25 26 #define CHANGES_VERSION_STRING "-1" 27 28 } // namespace syncable 29 } // namespace syncer 30 31 #endif // SYNC_SYNCABLE_SYNCABLE_CHANGES_VERSION_H_ 32