After a crash of digikam the Tags table was corrupted: the lft and rgt values were inconsistend and several old tags were missing. I was able to re-construct most of the table by hand. Reproducible: Didn't try Steps to Reproduce: 1. After GPS correlating several pictures I used the feature to reverse-tag those pictures. For some new cities multiple tags were created. 2. I removed some of those duplicate tags. 3. Digikam consumed 100% for a very long time, so I termincated it 4. After a restart several tags were missing: As one country tag was removed, all subtags were missing as well. They were still in the table, but unreachable. The Tags-table corruption is similar to Bug 298929. I was able to re-insert most of the missing tags by hand and re-constructing the lft,rgt values by following <http://stackoverflow.com/questions/3623645/how-to-repair-a-corrupted-mptt-tree-nested-set-in-the-database-using-sql> Bug 309061 describes a bug when deleting tags.
Created attachment 81232 [details] tag recovery procedure
digiKam 3.5.0 is out. Can you give a fresh feedback about your report ? Crash still reproducible ? Thanks in advance Gilles Caulier
(In reply to comment #2) > Can you give a fresh feedback about your report ? Crash still reproducible ? I hope to never get in that situation again, as reconstructing the tree by hand did cost me several days. Perhaps killing digikam by "kill -9" while a tag-tree modification is in process can reproduce it?
digiKam 4.0.0 is out : http://www.digikam.org/node/713 Please check if this entry still valid with this new version. Thanks in advance Gilles Caulier
A work around to maintain sqlite database file have been given in users mailing lits : http://mail.kde.org/pipermail/digikam-users/2014-August/019738.html http://mail.kde.org/pipermail/digikam-users/2014-August/019739.html http://mail.kde.org/pipermail/digikam-users/2014-August/019740.html These kind of maintenance operation must be done through a dedicated tool in digiKam. Gilles Caulier
Another optimization of SQlite database is given here : http://neuntoeter.wordpress.com/2012/06/21/io-probleme-mit-digikam/ It's an performance tune of SQlite settings. Gilles Caulier