Version: 1.6.0 (using KDE 4.5.4) OS: Linux a creation or a deletion, of a tag, takes a very long time if more than 500 tags is present Reproducible: Always Steps to Reproduce: Create a tag tree with more 500 items. Actual Results: > 5 minutes to create or delete a tag MySQl is used for database
Give us you DB config from digiKam setup panel. Do you have the same problem about Rating ? Gilles Caulier
My connection configuration is on localhost with default port (3306) with user digikam. The version of mysql in 5.1. digikam user has all right on digikam and digikamthumbnail databases. I found the problem. When digikam create or delete a tag in "tags" table, digikam can update twice all line of "tags" table. And for each line, the move_tagstree trigger was launch. This trigger delete all lines in "tagstree" table (DELETE FROM TAGSTREE;) and insert new lines (REPLACE ...). There are 2n (with n is the number lines in tags table, in my case n=745) DELETE and 2n REPLACE in a transaction but only the last delete and the last REPLACE are necessaries. If i delete this trigger, i have a very good response time. I want to propose a patch in the next month (if i have time to do this) Regards Olivier PIFFAUT
CC'ing Holger. I'm not familiar with these MySQL triggers (solved differently for SQLite)
Hi Olivier, thanks for your investigation of the problem. I can reproduce the problem in theory and I'm fine with a patch from you which deletes the trigger and to move the trigger logic to the responsible function when moving a tag to another position within the tag tree. :)
fixed in 2.0.0-rc