[Digikam-devel] [Bug 303994] New: Many face tag comboboxes and may tags, will have an impact on performance

Kristian Karl kristian.hermann.karl at gmail.com
Tue Jul 24 10:07:50 BST 2012


https://bugs.kde.org/show_bug.cgi?id=303994

            Bug ID: 303994
          Severity: normal
           Version: unspecified
          Priority: NOR
          Assignee: digikam-devel at kde.org
           Summary: Many face tag comboboxes and may tags, will have an
                    impact on performance
    Classification: Unclassified
                OS: Linux
          Reporter: kristian.hermann.karl at gmail.com
          Hardware: Other
            Status: UNCONFIRMED
         Component: Face Management
           Product: digikam

Adding a lot of face tags on an image, and having a lot of tags in 'My tags',
will hurt the performance of digikam.

How to reproduce:
==============
1) Start digikam, make sure you have +100 tags in 'My tags'
2) Add 2 images to a album
3) View image 1 by clicking on it (preview)
4) Enable 'Show Face Tags'
5) Manually add a 50 face tags to image 1. (Do not assign any tags, only add
the face tag with the combo boxes)
6) Switch to preview image 2
7) Switch back to preview image 1
8) Repeat steps 6) and 7), and notice how the loading of image 1 gets slower
and slower

I tried to troubleshoot this behavior, but did not manage to solve it. I
noticed though, that digikam spent a lot of time in ModelCompletion::sync
[core/libs/widgets/common/modelcompletion.cpp]
I enabled (un-commenting) the 2 kDebug() @ lines 244-245 and 260, saw what to
me appeared a growth of calls to ModelCompletion::sync for each added
[d->addItem(face); ==> core/utilities/facedetection/facegroup.cpp @ line 617]
AssignNameWidgets. But I failed to understand why so many calls where made to
ModelCompletion::sync, and from where they originated.

This never stopped growing, so that explained why digikam ran slower and slower
when opening an image with a lot of AssignNameWidgets in it.

Reproducible: Always

-- 
You are receiving this mail because:
You are the assignee for the bug.



More information about the Digikam-devel mailing list