| Summary: | Deleting 2 tags only updates 1 tag to file | ||
|---|---|---|---|
| Product: | [Applications] digikam | Reporter: | Kristian Karl <kristian.hermann.karl> |
| Component: | Tags-Keywords | Assignee: | Digikam Developers <digikam-bugs-null> |
| Status: | RESOLVED FIXED | ||
| Severity: | normal | CC: | metzpinguin |
| Priority: | NOR | ||
| Version First Reported In: | unspecified | ||
| Target Milestone: | --- | ||
| Platform: | Ubuntu | ||
| OS: | Linux | ||
| Latest Commit: | https://invent.kde.org/graphics/digikam/commit/b8edbb8f17025199a4d9ea3e5b6fef99ad481516 | Version Fixed/Implemented In: | 8.1.0 |
| Sentry Crash Report: | |||
|
Description
Kristian Karl
2023-04-16 18:49:41 UTC
Also, I tested an verified the same unexpected result on digiKam-8.0.0-x86-64.appimage Build date: 2023-04-12 15:32 (target: RelWithDebInfo) Revision: 66b84e1ba8f8003994fa398a669e1ccc4224a901 Branch: HEAD I can't reproduce the problem. Remember that reading from sidecar is always a merge of the metadata from the image. The sidecar has priority over the metadata of the image. So if the tag in the sidecar is deleted, the corresponding tag can reappear from the image. Maik Ah, interesting! Maybe my repro steps was flawed or incorrect. I'll make a video of the problem tomorrow. One way to expose the problem is to ask Digikam to re-read from the sidecar files, but it is not necessary to do so. After deleting the both tags, the sidecar files can be examined externally. Like using grep. When doing so, one of the tags will still exist in half of the images sidecar files, where as the other half of the sidecar files will be correct; tag is removed. Ok, I skipped over the deletion of the tags yesterday. We start 2 individual jobs, since a progress manager job is already running then, the delete job for the other tag is no longer started, otherwise the system would become too slow and the SQLite database would be blocked. I'll see if we can combine the jobs... Maik Ah, nice, thank you! I did not mention it, but I'm running my digikam on a Maria/mysql instance. But I guess it does not matter in this case? Also, I made a video https://youtu.be/BUHJIVCn-XY using a clean install of kubuntu 22.10 and the latest snapshot of digikam appiage. But I think you understand the problem. Git commit b8edbb8f17025199a4d9ea3e5b6fef99ad481516 by Maik Qualmann. Committed on 17/04/2023 at 10:38. Pushed by mqualmann into branch 'master'. merge metadata write job when multiple tags are deleted FIXED-IN: 8.1.0 M +2 -1 NEWS M +4 -4 core/libs/album/manager/albummanager.h M +10 -11 core/libs/album/manager/albummanager_talbum.cpp M +10 -2 core/libs/tags/engine/tagmodificationhelper.cpp M +8 -2 core/libs/tags/manager/tagsmanager.cpp https://invent.kde.org/graphics/digikam/commit/b8edbb8f17025199a4d9ea3e5b6fef99ad481516 I'll fix the broken compilation of the tests tonight. Maik Git commit 1e8cb779647a5921946c241909e82a961d6d13cc by Maik Qualmann. Committed on 17/04/2023 at 16:23. Pushed by mqualmann into branch 'master'. fix compile the album model test M +2 -2 core/tests/albummodel/albummodel_utest.cpp https://invent.kde.org/graphics/digikam/commit/1e8cb779647a5921946c241909e82a961d6d13cc I tested the fix this morning, and it works as expected now. Thank you very much, I really appreciate your work <3 |