commit 181611eddfe8324584a32771d7956d5f1cf207c7
parent 3183ec4a681db9ad30a2e90b4b944bf3d88a2c25
Author: Dan Stillman <dstillman@zotero.org>
Date: Wed, 7 Sep 2011 07:43:27 +0000
Add an integrity check step for syncDeleteLog entries for nonexistent libraries (which shouldn't be possible)
Diffstat:
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/chrome/content/zotero/xpcom/schema.js b/chrome/content/zotero/xpcom/schema.js
@@ -1084,7 +1084,12 @@ Zotero.Schema = new function(){
"SELECT COUNT(*) FROM tags NATURAL JOIN itemTags JOIN items USING (itemID) WHERE IFNULL(tags.libraryID, 0)!=IFNULL(items.libraryID,0)",
"SELECT COUNT(*) FROM itemTags WHERE tagID IS NULL",
- "SELECT COUNT(*) FROM itemAttachments WHERE charsetID='NULL'"
+ "SELECT COUNT(*) FROM itemAttachments WHERE charsetID='NULL'",
+
+ // TODO: check 'libraries', not 'groups', but first add a
+ // migration step to delete 'libraries' rows not in 'groups'
+ //"SELECT COUNT(*) FROM syncDeleteLog WHERE libraryID != 0 AND libraryID NOT IN (SELECT libraryID FROM libraries)"
+ "SELECT COUNT(*) FROM syncDeleteLog WHERE libraryID != 0 AND libraryID NOT IN (SELECT libraryID FROM groups)"
];
for each(var sql in queries) {