2.0b3 very slow in many operations
just upgraded the other day and zotero is now exceedingly slow in many operations-- adding references, moving items into different collections, dragging and dropping PDFs into collections. Each of these operations locks up firefox for several minutes. Is there a way to de-grade back to 1.5? the slowness is debilitating.
1) should I download and install the new zotero.sqlite file from the database repair tool? Or was that simply so you could see test w/ my database?
2) is there a way to go back to an earlier version? e.g. 1.5? things were working great before I upgraded, and because I use zotero so much, these problems are significantly impeding my work.
thanks very much.
I uploaded the error report and it gave me the following report number 989030448.
Thanks for looking into this.
Mike
Olaf
I have made many changes to my initial database and always try to complete references where information is missing or spelled differently.. e.g. The same journal has probably different writings with all capital letters, with always the first letter of a word being capital or correctly with "of" "and" etc. being written with small letters. This heavily depends on the source of the data being imported. The same for author names. There it is not only the capitalization but also initials, with or without period, full first names. One example: I have the same author as
DeMott P.
DeMott P
DeMott Paul
DeMott Paul J
DeMott Paul J.
While I try to correct for this this may blow up the database for disamb. ckecking (I have no idea how and if this is done but I guess something like this is implemented).
When I unchecked it, everything is much faster now!
Olaf
The problem was caused by unoptimized query handling in the version of SQLite used in Firefox 3 (and fixed in the version included with Firefox 3.5).
If you don't want to wait and know what you're doing, you can run this on your database to fix the problem:
DROP TRIGGER IF EXISTS fki_collectionItems_itemID_sourceItemID;
CREATE TRIGGER fki_collectionItems_itemID_sourceItemID
BEFORE INSERT ON collectionItems
FOR EACH ROW BEGIN
SELECT RAISE(ABORT, 'insert on table "collectionItems" violates foreign key constraint "fki_collectionItems_itemID_sourceItemID"')
WHERE NEW.itemID IN (SELECT itemID FROM itemAttachments WHERE sourceItemID IS NOT NULL UNION SELECT itemID FROM itemNotes WHERE sourceItemID IS NOT NULL);
END;
DROP TRIGGER IF EXISTS fku_collectionItems_itemID_sourceItemID;
CREATE TRIGGER fku_collectionItems_itemID_sourceItemID
BEFORE UPDATE OF itemID ON collectionItems
FOR EACH ROW BEGIN
SELECT RAISE(ABORT, 'update on table "collectionItems" violates foreign key constraint "fku_collectionItems_itemID_sourceItemID"')
WHERE NEW.itemID IN (SELECT itemID FROM itemAttachments WHERE sourceItemID IS NOT NULL UNION SELECT itemID FROM itemNotes WHERE sourceItemID IS NOT NULL);
END;