Created attachment 64205 [details] what happends Version: 2.1.1 (using KDE 4.7.1) OS: Linux Every time I start to tag some new face a new label "_Digikam_root_tag_" is created. Reproducible: Always Steps to Reproduce: just start to tac some face. Should be in the tag "Persons" or the localized version. If I rename it, a new "_Digikam_root_tag_" is created and the new label with the name is set in it Expected Results: the name of the tagged person should be in "persons" root label
Francesco, I believe this is a MySQL specific tag?
(In reply to comment #0) Leo if you're running on mysql database could you provide the output of the following query? SELECT * FROM Tags ORDER BY id LIMIT 10; (In reply to comment #1) > Francesco, I believe this is a MySQL specific tag? yes it is: file: data/database/dbconfig.xml.cmake Revision 24ee26d9 the tree algorithm used by the mysql schema need one and only one root, thus I'm inserting/replacing the tag with id = 0 in the tags table. it should be executed _only_ by the "CreateTriggers" DBACtion. SELECT @minLeft := IF(ISNULL(MIN(lft)), 1, MIN(lft)-1), @maxRight := IF(ISNULL(MAX(rgt)), 2, MAX(rgt)+1) FROM Tags WHERE id >= 0 AND pid>=0; SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO'; REPLACE INTO Tags (id, pid, name, icon, iconkde, lft, rgt) VALUES (0, -1, '_Digikam_root_tag_', 0, NULL, @minLeft, @maxRight )
(In reply to comment #2) > (In reply to comment #0) > Leo if you're running on mysql database could you provide the output of the > following query? > > SELECT * FROM Tags ORDER BY id LIMIT 10; Here is it mysql> SELECT * FROM Tags ORDER BY id LIMIT 10; +----+------+----------------------------+------+---------+-----+-----+ | id | pid | name | icon | iconkde | lft | rgt | +----+------+----------------------------+------+---------+-----+-----+ | 0 | -1 | _Digikam_root_tag_ | 0 | NULL | 1 | 178 | | 1 | 0 | Cham | 0 | NULL | 176 | 177 | | 2 | 0 | _Digikam_Internal_Tags_ | 0 | NULL | 132 | 175 | | 3 | 2 | Need Resolving History | 0 | NULL | 173 | 174 | | 4 | 2 | Need Tagging History Graph | 0 | NULL | 171 | 172 | | 5 | 2 | Original Version | 0 | NULL | 169 | 170 | | 6 | 2 | Current Version | 0 | NULL | 167 | 168 | | 7 | 2 | Intermediate Version | 0 | NULL | 165 | 166 | | 8 | 2 | Version Always Visible | 0 | NULL | 163 | 164 | | 9 | 2 | Scanned for Faces | 0 | NULL | 161 | 162 | +----+------+----------------------------+------+---------+-----+-----+ 10 rows in set (0.00 sec)
I have same problem. Here is my output mysql [localhost] {andor} (digikam) > SELECT * FROM Tags ORDER BY id LIMIT 10; +----+------+-------------------------+------+---------+-----+-----+ | id | pid | name | icon | iconkde | lft | rgt | +----+------+-------------------------+------+---------+-----+-----+ | 0 | -1 | _Digikam_root_tag_ | 0 | NULL | 1 | 94 | | 1 | 0 | _Digikam_root_tag_ | 0 | NULL | 44 | 93 | | 2 | 1 | _Digikam_root_tag_ | 0 | NULL | 45 | 92 | | 3 | 2 | Zsani | 0 | NULL | 90 | 91 | | 4 | 0 | _Digikam_Internal_Tags_ | 0 | NULL | 2 | 43 | | 5 | 4 | Color Label None | 0 | NULL | 41 | 42 | | 6 | 4 | Color Label Red | 0 | NULL | 39 | 40 | | 7 | 4 | Color Label Orange | 0 | NULL | 37 | 38 | | 8 | 4 | Color Label Yellow | 0 | NULL | 35 | 36 | | 9 | 4 | Color Label Green | 0 | NULL | 33 | 34 | +----+------+-------------------------+------+---------+-----+-----+ 10 rows in set (0.00 sec) mysql [localhost] {andor} (digikam) > SELECT * FROM TagsTree ORDER BY id LIMIT 10; +----+------+ | id | pid | +----+------+ | 0 | -1 | | 1 | 0 | | 2 | 1 | | 3 | 2 | | 4 | 0 | | 5 | 4 | | 6 | 4 | | 7 | 4 | | 8 | 4 | | 9 | 4 | +----+------+
(In reply to comment #4) > I have same problem. > Here is my output > mysql [localhost] {andor} (digikam) > SELECT * FROM Tags ORDER BY id LIMIT 10; > +----+------+-------------------------+------+---------+-----+-----+ > | id | pid | name | icon | iconkde | lft | rgt | > +----+------+-------------------------+------+---------+-----+-----+ > | 0 | -1 | _Digikam_root_tag_ | 0 | NULL | 1 | 94 | > | 1 | 0 | _Digikam_root_tag_ | 0 | NULL | 44 | 93 | > | 2 | 1 | _Digikam_root_tag_ | 0 | NULL | 45 | 92 | > | 3 | 2 | Zsani | 0 | NULL | 90 | 91 | Please could you provide also the output of: show create table Tags; if there is an unique index on the `id` coulumn the 3 "_Digikam_root_tag_" should not be there, that, or the "no auto value on zero" statement failed
CREATE TABLE `Tags` ( `id` int(11) NOT NULL AUTO_INCREMENT, `pid` int(11) DEFAULT NULL, `name` longtext CHARACTER SET utf8 NOT NULL, `icon` int(11) DEFAULT NULL, `iconkde` longtext CHARACTER SET utf8, `lft` int(11) NOT NULL, `rgt` int(11) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=MyISAM AUTO_INCREMENT=47 DEFAULT CHARSET=latin1 show create table TagsTree; CREATE ALGORITHM=UNDEFINED DEFINER=`andor`@`localhost` SQL SECURITY DEFINER VIEW `TagsTree` AS select `Tags`.`id` AS `id`,`Tags`.`pid` AS `pid` from `Tags`
(In reply to comment #6) > CREATE TABLE `Tags` ( > `id` int(11) NOT NULL AUTO_INCREMENT, > `pid` int(11) DEFAULT NULL, > `name` longtext CHARACTER SET utf8 NOT NULL, > `icon` int(11) DEFAULT NULL, > `iconkde` longtext CHARACTER SET utf8, > `lft` int(11) NOT NULL, > `rgt` int(11) NOT NULL, > PRIMARY KEY (`id`) > ) ENGINE=MyISAM AUTO_INCREMENT=47 DEFAULT CHARSET=latin1 > > > show create table TagsTree; > CREATE ALGORITHM=UNDEFINED DEFINER=`andor`@`localhost` SQL SECURITY DEFINER > VIEW `TagsTree` AS select `Tags`.`id` AS `id`,`Tags`.`pid` AS `pid` from `Tags` bad, the record is created by the following statements: -- 8< 8< 8< 8< 8< 8< 8< 8< 8< 8< 8< 8< 8< 8< 8< 8< SELECT @minLeft := IF(ISNULL(MIN(lft)), 1, MIN(lft)-1), @maxRight := IF(ISNULL(MAX(rgt)), 2, MAX(rgt)+1) FROM Tags WHERE id >= 0 AND pid>=0; SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO'; REPLACE INTO Tags (id, pid, name, icon, iconkde, lft, rgt) VALUES (0, -1, '_Digikam_root_tag_', 0, NULL, @minLeft, @maxRight ) SET SQL_MODE=@OLD_SQL_MODE; -- 8< 8< 8< 8< 8< 8< 8< 8< 8< 8< 8< 8< 8< 8< 8< 8< The first select store in two variables the bounds of our tags tree. The set stmt tell mysql not to assign a value to the id field even if it's zero, by default it increment a primary key column if the value inserted is zero or NULL the replace stmt then should only alter (or insert) the record 0, never inserting a duplicate one. Could I abuse of your kindeness and ask to manually run the statements between the scissors manually from a console client (phpmyadmin is not an option, it sometimes mangle @vars) Does it add a new record? If yes could you try replacing the replace with the following two? INSERT IGNORE INTO Tags (id, pid, name, icon, iconkde, lft, rgt) VALUES (0, -1, '_Digikam_root_tag_', 0, NULL, @minLeft, @maxRight ); UPDATE Tags SET lft = @minLeft, rgt = @maxRight WHERE id = 0 ; Also the mysql version could be interesting. just a closing note: do _not_ delete the records from the table, it would broke the tree structure, do it from digikam if possible, if not we need to work on it too thanks, Francesco
Sorry, but at the moment I cannot help you anymore, since I blocked by this bug :( https://bugs.launchpad.net/ubuntu/+source/digikam/+bug/871597 Hope to help you as soon as possible
KDE 4.7.2 Digikam 2.2.0 Opensuse, mysql Every tag hierarchy written to xmp into the photos starts with _Digikam_root_tag_/ That will lead to a doubled tag list in xmp, if the tag list allready exists without _Digikam_root_tag_/ at the beginning. Can someone confirm this?
I can confirm that using MySQL as digiKam's back end results in a parallel _Digikam_root_tag_/ tagging structure. _Digikam_root_tag_ tags can be removed using the following command: exiftool -xmp:LastKeywordXMP= -xmp:TagsList= -xmp:hierarchicalSubject= *.jpg
I'm also observing this with the DK 2.2.0 rpm package for openSUSE 11.4. I've been using mysql as database with DK 1.1.9 and have just upgraded to DK 2.2.0. BTW, automatically upgrading the database from schema 5 to schema 6 still fails. I had to drop all tables in the DK database and let them be created from scratch to get DK working with mysql. :-(
I would like to direct commenters' focus to Francesco's comment #7, it seems he needs active help to debug this problem.
Created attachment 65041 [details] Console output of mysql-statements from comment #7
(sorry for double post, this comments comment #13...) Hi Francesco, I've executed the statements, please see the attached console output. Do you missed a semicolon after the 3rd statement (REPLACE INTO)? Executing at is produces an error (line 33 ff.) As far as I see the REPLACE does not produce a new node, so I did not execute the INSERT IGNORE statement. Please let me know, if any further information is needed. My Mysql is 5.1.58-1ubuntu1. Kind regards, Michael
I've reproduced this with mysql-5.1.59, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' is not working, or it's not executed in the same connection as the insert.
(In reply to comment #15) > I've reproduced this with mysql-5.1.59, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' is not > working, or it's not executed in the same connection as the insert. P.S. if consecutive query inside a <dbaction> tag are not executed in the same connection problem will arise in all query containing @variables, because these are local to the connection.
Question to someone experiencing the problem: show create table Tags ; look like this? CREATE TABLE `tags` ( `id` int(11) NOT NULL AUTO_INCREMENT, `pid` int(11) DEFAULT NULL, `name` longtext NOT NULL, `icon` int(11) DEFAULT NULL, `iconkde` longtext, `lft` int(11) NOT NULL, `rgt` int(11) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=MyISAM AUTO_INCREMENT=2147483648 DEFAULT CHARSET=utf8 I'm interested expecially in the "AUTO_INCREMENT=2147483648" part
http://commits.kde.org/digikam/33dc55daee96bc68d4e7d9a286fcf7e78efd523e first part of the fix
Since the last update I'm running now the ubuntu version 2:2.1.1-0ubuntu1+kde 4.7.2 (whic does not have this problem anymore) But if it could help CREATE TABLE `Tags` ( `id` int(11) NOT NULL AUTO_INCREMENT, `pid` int(11) DEFAULT NULL, `name` longtext CHARACTER SET utf8 NOT NULL, `icon` int(11) DEFAULT NULL, `iconkde` longtext CHARACTER SET utf8, `lft` int(11) NOT NULL, `rgt` int(11) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=MyISAM AUTO_INCREMENT=97 DEFAULT CHARSET=latin1
I've deleted the _digikam_root_tag_ from digikam and applied the reverse geocoding again. Now the tag is gone, at least, it does not re-appear again. Digikam: 2:2.1.1-0ubuntu1 mysql: 5.1.58-1ubuntu1 But I had not to update digikam, I've installed Kubuntu 11.10 in mid-october with the named versions. So there is a way to get rid of the tag manually by deleting it from digikam an re-applying geocoding. mysql> show create table Tags ; CREATE TABLE `Tags` ( `id` int(11) NOT NULL AUTO_INCREMENT, `pid` int(11) DEFAULT NULL, `name` longtext CHARACTER SET utf8 NOT NULL, `icon` int(11) DEFAULT NULL, `iconkde` longtext CHARACTER SET utf8, `lft` int(11) NOT NULL, `rgt` int(11) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=MyISAM AUTO_INCREMENT=363 DEFAULT CHARSET=latin1
Hi Francesco, The second issue (post #9) still exists with dk 2.2.0.-109.5 Can we help debugging somehow? in reply to post #17: AUTO_INCREMENT=983 BTW I never had a _Digikam_root_tag_ as tag in the tag list.
In comment #20 I removed the dummy tag. Now, while running some face recognition, the tag re-appears, with the "Unknown" tag below it.
in addition to comment #19 I guess, that somewhere in the sql statement (that puts together the tag hierarchy; I don't know how it works) is a condition (IF...), to stop the chaining after reaching "pid = 0". Maybe the IF THEN condition is supposed to stop before reaching "pid = 0".
I've discovered that the new tag is created as root of the "Persons", I've excluded a pair of things that could have created it, but not yet found the real bug
Hello, In my database I did change in table "Tags" the entry "_Digikam_root_tag_"'s id 0 to -1. This solved my issue. Regards
Hi all, I'm back my system got updated, but the problem persist :( Ubuntu 12.04 LTS with digikam 4:2.7.0-precise~ppa3 mysql> SELECT * FROM Tags ORDER BY id LIMIT 10; +----+------+----------------------------+------+---------+-----+-----+ | id | pid | name | icon | iconkde | lft | rgt | +----+------+----------------------------+------+---------+-----+-----+ | 0 | -1 | _Digikam_root_tag_ | 0 | NULL | 1 | 60 | | 1 | 0 | _Digikam_Internal_Tags_ | 0 | NULL | 16 | 59 | | 2 | 1 | Need Resolving History | 0 | NULL | 57 | 58 | | 3 | 0 | Cham | 0 | NULL | 14 | 15 | | 4 | 1 | Need Tagging History Graph | 0 | NULL | 55 | 56 | | 5 | 1 | Original Version | 0 | NULL | 53 | 54 | | 6 | 1 | Current Version | 0 | NULL | 51 | 52 | | 7 | 1 | Intermediate Version | 0 | NULL | 49 | 50 | | 8 | 1 | Version Always Visible | 0 | NULL | 47 | 48 | | 9 | 1 | Color Label None | 0 | NULL | 45 | 46 | +----+------+----------------------------+------+---------+-----+-----+ 10 rows in set (0.00 sec) mysql> SELECT * FROM TagsTree ORDER BY id LIMIT 10; +----+------+ | id | pid | +----+------+ | 0 | -1 | | 1 | 0 | | 2 | 1 | | 3 | 0 | | 4 | 1 | | 5 | 1 | | 6 | 1 | | 7 | 1 | | 8 | 1 | | 9 | 1 | +----+------+ 10 rows in set (0.02 sec)
This still seems to be happening in 2.7.0! mysql Ver 14.14 Distrib 5.5.24, On Slackware64-current mysql> select * from Tags where name='_Digikam_root_tag_'; +-----+------+--------------------+------+---------+-----+-----+ | id | pid | name | icon | iconkde | lft | rgt | +-----+------+--------------------+------+---------+-----+-----+ | 0 | -1 | _Digikam_root_tag_ | 0 | NULL | 1 | 290 | | 138 | 0 | _Digikam_root_tag_ | 0 | NULL | 2 | 15 | +-----+------+--------------------+------+---------+-----+-----+ 2 rows in set (0.00 sec) The worst part is I had tagged a bunch of photos with me before I realised my tag appear twice in the tag list. So I tried to drag 'n drop the photos from the duplicate tag to the original one and somewhere in that maneuver I lost both the original and duplicate assignment! So how can I re-scan those photos and get digikam to re-find my face?
I can confirm the problem still exists in 2.7.0 (installed from http://ppa.launchpad.net/philip5/extra/ubuntu/ at Ubuntu 12.04). I've tried to re-read metadata from images - that creates a new _digikam_root_tag_. If a imported tag exists under another branch already, it's impossible to remove the messed stuff from the images itself. May I suggest to get rid of the internal tags at all? There are two alternative options that don't need any "magic" tags that must be hidden from most parts of the software: a) a real root tag that must be created by the user b) no root tags at all Option a) would make it necessary to mark that tag as "uninteresting", so it won't be written to the JPG or sidecar files. But this must be an *explicit* setting, maybe during setup wizard. And not some implicit c**p. Rule of thumb: If the user don't see it - don't store it :-) BTW: This would be a nice feature for any other tag as well. If set on a tag, that tag won't be exposed to the images. So the user may create a semantic tree, but skip some structural nodes. Option b) would make it necessary to allow nulls in column Tags.pid. But who says a tree must start with a single root? Please think about it. The internal tags causes lots of problems to the users, so this should be solved in the very near future. Currently, I'd consider this the most annoying bug in the whole software. Because of another issue, I have to rebuild my tag database. That's nearly impossible for 25.000 images with this issue still present. Regards, Michael
Hello, I've got the same problem with digikam 2.8.0 from Philips PPA (xubuntu 12.04). I've tried from mysql 5.1.61 and mysql 5.5.28-0ubuntu0.12.04.2, always the same. Cleaning the tags and rewrite it to image, the tag _Digikam_root_tag is always there. + this "bugs" : so tagging is not usable. Query Output: > SELECT * FROM digikam.Tags ORDER BY id LIMIT 10 + ------- + -------- + --------- + --------- + ------------ + -------- + -------- + | id | pid | name | icon | iconkde | lft | rgt | + ------- + -------- + --------- + --------- + ------------ + -------- + -------- + | 0 | -1 | _Digikam_root_tag_ | 0 | | 1 | 542 | | 1 | 0 | _Digikam_root_tag_ | 0 | | 246 | 541 | | 2 | 1 | lieu | 0 | | 461 | 540 | | 3 | 2 | capblancnez | 0 | | 538 | 539 | | 4 | 0 | _Digikam_Internal_Tags_ | 0 | | 204 | 245 | | 5 | 4 | Color Label None | 0 | | 243 | 244 | | 6 | 4 | Color Label Red | 0 | | 241 | 242 | | 7 | 4 | Color Label Orange | 0 | | 239 | 240 | | 8 | 4 | Color Label Yellow | 0 | | 237 | 238 | | 9 | 4 | Color Label Green | 0 | | 235 | 236 | | NULL | NULL | NULL | NULL | NULL | NULL | NULL | + ------- + -------- + --------- + --------- + ------------ + -------- + -------- + 11 rows Query Output: > show create table digikam.TagsTree + --------- + ---------------- + ------------------------- + ------------------------- + | View | Create View | character_set_client | collation_connection | + --------- + ---------------- + ------------------------- + ------------------------- + | TagsTree | CREATE ALGORITHM=UNDEFINED DEFINER=`sospcdk`@`192.168.1.10` SQL SECURITY DEFINER VIEW `digikam`.`TagsTree` AS select `digikam`.`Tags`.`id` AS `id`,`digikam`.`Tags`.`pid` AS `pid` from `digikam`.`Tags` | utf8 | utf8_general_ci | + --------- + ---------------- + ------------------------- + ------------------------- + 1 rows Is there a solution ? Greatings, Eric
Hello, I have a mix of this bug and this one : https://bugs.kde.org/show_bug.cgi?id=230602 So tagging is not usable. As I try to reorder the tree view of the tags (Same tags are in a first tree with _Digikam_root_tag and to root with same pictures in multiple branches or not ?), this bug occurs : https://bugs.kde.org/show_bug.cgi?id=230602) Greatings, Eric
TagsTree view : > SELECT * FROM digikam.TagsTree ORDER BY id LIMIT 10 + ------- + -------- + | id | pid | + ------- + -------- + | 0 | -1 | | 1 | 0 | | 2 | 1 | | 3 | 2 | | 4 | 0 | | 5 | 4 | | 6 | 4 | | 7 | 4 | | 8 | 4 | | 9 | 4 | + ------- + -------- + 10 rows
> show create table digikam.Tags + ---------- + ----------------- + | Table | Create Table | + ---------- + ----------------- + | Tags | CREATE TABLE `Tags` ( `id` int(11) NOT NULL AUTO_INCREMENT, `pid` int(11) DEFAULT NULL, `name` longtext CHARACTER SET utf8 NOT NULL, `icon` int(11) DEFAULT NULL, `iconkde` longtext CHARACTER SET utf8, `lft` int(11) NOT NULL, `rgt` int(11) N... | + ---------- + ----------------- +
Diff between /usr/share/kde4/apps/database/dbconfig.xml in my digikam database conf file and the dbconfig.xml given by Francesco : 1 / /usr/share/kde4/apps/database/dbconfig.xml 2 / dbconfig.xml given by Francesco line 908 : 1 / CREATE PROCEDURE create_index_if_not_exists(table_name_vc varchar(50), index_name_vc varchar(50), field_list_vc varchar(1024)) 2 / CREATE PROCEDURE create_index_if_not_exists(table_name_vc varchar(50), index_name_vc varchar(50), field_list_vc varchar(1024), is_unique int) line 924 : 1 / CONVERT( ' ADD INDEX ' USING latin1), 2 / CONVERT( IF(is_unique = 0, ' ADD INDEX ', ' ADD UNIQUE INDEX ') USING latin1), line 936 to 950 : 1/ <statement mode="plain">CALL create_index_if_not_exists('Images','dir_index','album');</statement> <statement mode="plain">CALL create_index_if_not_exists('Images','hash_index','uniqueHash');</statement> <statement mode="plain">CALL create_index_if_not_exists('ImageTags','tag_index','tagid');</statement> <statement mode="plain">CALL create_index_if_not_exists('ImageTags','tag_id_index','imageid');</statement> <statement mode="plain">CALL create_index_if_not_exists('Images','image_name_index','name(996)');</statement> <statement mode="plain">CALL create_index_if_not_exists('ImageInformation','creationdate_index','creationDate');</statement> <statement mode="plain">CALL create_index_if_not_exists('ImageComments','comments_imageid_index','imageid');</statement> <statement mode="plain">CALL create_index_if_not_exists('ImageCopyright','copyright_imageid_index','imageid');</statement> <statement mode="plain">CALL create_index_if_not_exists('ImageHistory','uuid_index','uuid');</statement> <statement mode="plain">CALL create_index_if_not_exists('ImageRelations','subject_relations_index','subject');</statement> <statement mode="plain">CALL create_index_if_not_exists('ImageRelations','object_relations_index','object');</statement> <statement mode="plain">CALL create_index_if_not_exists('TagProperties','tagproperties_index','tagid');</statement> <statement mode="plain">CALL create_index_if_not_exists('ImageTagProperties','imagetagproperties_index','imageid, tagid');</statement> <statement mode="plain">CALL create_index_if_not_exists('ImageTagProperties','imagetagproperties_imageid_index','imageid');</statement> <statement mode="plain">CALL create_index_if_not_exists('ImageTagProperties','imagetagproperties_tagid_index','tagid');</statement> 2 / <statement mode="plain">CALL create_index_if_not_exists('Images','dir_index','album', 0);</statement> <statement mode="plain">CALL create_index_if_not_exists('Images','hash_index','uniqueHash', 0);</statement> <statement mode="plain">CALL create_index_if_not_exists('ImageTags','tag_index','tagid', 0);</statement> <statement mode="plain">CALL create_index_if_not_exists('ImageTags','tag_id_index','imageid', 0);</statement> <statement mode="plain">CALL create_index_if_not_exists('Images','image_name_index','name(996)', 0);</statement> <statement mode="plain">CALL create_index_if_not_exists('ImageInformation','creationdate_index','creationDate', 0);</statement> <statement mode="plain">CALL create_index_if_not_exists('ImageComments','comments_imageid_index','imageid', 0);</statement> <statement mode="plain">CALL create_index_if_not_exists('ImageCopyright','copyright_imageid_index','imageid', 0);</statement> <statement mode="plain">CALL create_index_if_not_exists('ImageHistory','uuid_index','uuid', 0);</statement> <statement mode="plain">CALL create_index_if_not_exists('ImageRelations','subject_relations_index','subject', 0);</statement> <statement mode="plain">CALL create_index_if_not_exists('ImageRelations','object_relations_index','object', 0);</statement> <statement mode="plain">CALL create_index_if_not_exists('TagProperties','tagproperties_index','tagid', 0);</statement> <statement mode="plain">CALL create_index_if_not_exists('ImageTagProperties','imagetagproperties_index','imageid, tagid', 0);</statement> <statement mode="plain">CALL create_index_if_not_exists('ImageTagProperties','imagetagproperties_imageid_index','imageid', 0);</statement> <statement mode="plain">CALL create_index_if_not_exists('ImageTagProperties','imagetagproperties_tagid_index','tagid', 0);</statement> line 989 + one more line for 2 (not in 1): 1 / <statement mode="plain">SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO';</statement> 2 / <statement mode="plain">SET SQL_MODE='NO_AUTO_VALUE_ON_ZERO';</statement> <statement mode="plain">UPDATE tags SET pid = 0 WHERE pid < 0 AND id > 0;</statement> line 995 : 1 / <statement mode="plain">SET SQL_MODE=@OLD_SQL_MODE;</statement> 2 / not in Francesco File line 1236 : 1 /CREATE PROCEDURE create_index_if_not_exists(table_name_vc varchar(50), index_name_vc varchar(50), field_list_vc varchar(1024)) 2 / CREATE PROCEDURE create_index_if_not_exists(table_name_vc varchar(50), index_name_vc varchar(50), field_list_vc varchar(1024), is_unique int) line 1252 : 1 / CONVERT( ' ADD INDEX ' USING latin1), 2 / CONVERT( IF(is_unique = 0, ' ADD INDEX ', ' ADD UNIQUE INDEX ') USING latin1), line 1264 to 1266 : 1 / <statement mode="plain">CALL create_index_if_not_exists('UniqueHashes','id_uniqueHashes','thumbId');</statement> <statement mode="plain">CALL create_index_if_not_exists('FilePaths','id_filePaths','thumbId');</statement> <statement mode="plain">CALL create_index_if_not_exists('CustomIdentifiers','id_customIdentifiers','thumbId');</statement> 2 / <statement mode="plain">CALL create_index_if_not_exists('UniqueHashes','id_uniqueHashes','thumbId', 0);</statement> <statement mode="plain">CALL create_index_if_not_exists('FilePaths','id_filePaths','thumbId', 0);</statement> <statement mode="plain">CALL create_index_if_not_exists('CustomIdentifiers','id_customIdentifiers','thumbId', 0);</statement> line 1493 : 1 / not in file 2 / <statement mode="plain">CALL create_index_if_not_exists('Tags','name_pid_index','name(128), pid', 1);</statement> Greatings, Eric
No diff for QSQLITE, the only diffs are on QMYSQL.
Hello, Francesco give this in bugs [Bug 299173] http://mail.kde.org/pipermail/digikam-devel/2012-May/060073.html with this link : http://www.sitepoint.com/hierarchical-data-database-2/ This is my table Tags order by left values : Query Output: > SELECT * FROM digikam.Tags ORDER BY lft + ------- + -------- + --------- + --------- + ------------ + -------- + -------- + | id | pid | name | icon | iconkde | lft | rgt | + ------- + -------- + --------- + --------- + ------------ + -------- + -------- + | 0 | -1 | _Digikam_root_tag_ | 0 | | 1 | 542 | | 270 | 0 | Personnes | 0 | | 2 | 3 | | 251 | 0 | ver | 0 | | 4 | 7 | | 252 | 251 | nereis | 0 | | 5 | 6 | | 231 | 0 | poisson2 | 0 | | 8 | 15 | | 260 | 231 | brochet | 0 | | 9 | 10 | | 242 | 231 | merlan | 0 | | 11 | 12 | | 232 | 231 | grande castagnole | 0 | | 13 | 14 | | 206 | 0 | ver coréen | 0 | | 16 | 17 | | 124 | 0 | plomb grappin | 0 | | 18 | 19 | | 112 | 0 | vegetal | 0 | | 20 | 27 | | 191 | 112 | fleur | 0 | | 21 | 24 | | 192 | 191 | perceneige | 0 | | 22 | 23 | | 113 | 112 | algue | 0 | | 25 | 26 | | 99 | 0 | trombine2 | 0 | | 28 | 35 | | 238 | 99 | gribouille | 0 | | 29 | 30 | | 141 | 99 | xavier | 0 | | 31 | 32 | | 100 | 99 | eric | 0 | | 33 | 34 | | 96 | 0 | lieu2 | 0 | | 36 | 51 | | 263 | 96 | vendee | 0 | | 37 | 38 | | 226 | 96 | mormal | 0 | | 39 | 40 | | 182 | 96 | cessenonorb | 0 | | 41 | 42 | | 154 | 96 | lestouches | 0 | | 43 | 44 | | 140 | 96 | saumonard | 0 | | 45 | 46 | | 122 | 96 | bretignolles la sauzaie | 0 | | 47 | 48 | | 97 | 96 | Chevret | 0 | | 49 | 50 | | 55 | 0 | lieu | 0 | | 52 | 73 | | 250 | 55 | chassiron | 0 | | 53 | 54 | | 228 | 55 | tournehem | 0 | | 55 | 56 | | 218 | 55 | dyck | 0 | | 57 | 58 | | 209 | 55 | riumar | 0 | | 59 | 60 | | 205 | 55 | platja de la marquesa | 0 | | 61 | 62 | | 200 | 55 | creche | 0 | | 63 | 64 | | 198 | 55 | cranpoulet | 0 | | 65 | 66 | | 197 | 55 | cranauxoeufs | 0 | | 67 | 68 | | 142 | 55 | fort boyard | 0 | | 69 | 70 | | 56 | 55 | salsperwick | 0 | | 71 | 72 | | 49 | 0 | poisson | 0 | | 74 | 101 | | 258 | 49 | brochet | 0 | | 75 | 76 | | 247 | 49 | marbré | 0 | | 77 | 78 | | 240 | 49 | merlan | 0 | | 79 | 80 | | 236 | 49 | flet | 0 | | 81 | 82 | | 229 | 49 | grande castagnole | 0 | | 83 | 84 | | 216 | 49 | girelle | 0 | | 85 | 86 | | 214 | 49 | sar | 0 | | 87 | 88 | | 211 | 49 | mulet | 0 | | 89 | 90 | | 203 | 49 | sardine | 0 | | 91 | 92 | | 137 | 49 | tacaud | 0 | | 93 | 94 | | 118 | 49 | maquereau | 0 | | 95 | 96 | | 116 | 49 | lancon | 0 | | 97 | 98 | | 50 | 49 | anguille | 0 | | 99 | 100 | | 45 | 0 | animal | 0 | | 102 | 181 | | 46 | 45 | vertebre | 0 | | 103 | 180 | | 150 | 46 | reptile | 0 | | 104 | 109 | | 158 | 150 | lezard | 0 | | 105 | 106 | | 151 | 150 | grenouille | 0 | | 107 | 108 | | 61 | 46 | mammifere | 0 | | 110 | 119 | | 234 | 61 | herisson | 0 | | 111 | 112 | | 163 | 61 | ane | 0 | | 113 | 114 | | 161 | 61 | cheval | 0 | | 115 | 116 | | 62 | 61 | mouton | 0 | | 117 | 118 | | 58 | 46 | oiseau | 0 | | 120 | 135 | | 169 | 58 | aigrette | 0 | | 121 | 122 | | 167 | 58 | vanneau | 0 | | 123 | 124 | | 160 | 58 | heron | 0 | | 125 | 126 | | 156 | 58 | hirondelle | 0 | | 127 | 128 | | 153 | 58 | cigogne | 0 | | 129 | 130 | | 60 | 58 | canard | 0 | | 131 | 132 | | 59 | 58 | cygne | 0 | | 133 | 134 | | 47 | 46 | poisson | 0 | | 136 | 179 | | 259 | 47 | brochet | 0 | | 137 | 138 | | 248 | 47 | marbré | 0 | | 139 | 140 | | 241 | 47 | merlan | 0 | | 141 | 142 | | 237 | 47 | flet | 0 | | 143 | 144 | | 230 | 47 | grande castagnole | 0 | | 145 | 146 | | 217 | 47 | girelle | 0 | | 147 | 148 | | 215 | 47 | sar | 0 | | 149 | 150 | | 212 | 47 | mulet | 0 | | 151 | 152 | | 204 | 47 | sardine | 0 | | 153 | 154 | | 173 | 47 | maigre | 0 | | 155 | 156 | | 139 | 47 | tacaud | 0 | | 157 | 158 | | 128 | 47 | cabillaud | 0 | | 159 | 160 | | 123 | 47 | turbot | 0 | | 161 | 162 | | 119 | 47 | maquereau | 0 | | 163 | 164 | | 117 | 47 | lancon | 0 | | 165 | 166 | | 107 | 47 | petite roussette | 0 | | 167 | 168 | | 105 | 47 | vieille | 0 | | 169 | 170 | | 98 | 47 | raie | 0 | | 171 | 172 | | 90 | 47 | sole | 0 | | 173 | 174 | | 51 | 47 | anguille | 0 | | 175 | 176 | | 48 | 47 | bar | 0 | | 177 | 178 | | 38 | 0 | materiel | 0 | | 182 | 191 | | 143 | 38 | tente | 0 | | 183 | 184 | | 127 | 38 | plomb grappin | 0 | | 185 | 186 | | 39 | 38 | vehicule | 0 | | 187 | 190 | | 40 | 39 | volvo-240 | 0 | | 188 | 189 | | 25 | 0 | trombine | 0 | | 192 | 199 | | 57 | 25 | gonzague | 0 | | 193 | 194 | | 27 | 25 | gribouille | 0 | | 195 | 196 | | 26 | 25 | eric | 0 | | 197 | 198 | | 24 | 0 | gribouille | 0 | | 200 | 201 | | 23 | 0 | eric | 0 | | 202 | 203 | | 4 | 0 | _Digikam_Internal_Tags_ | 0 | | 204 | 245 | | 269 | 4 | Version Always Visible | 0 | | 205 | 206 | | 268 | 4 | Intermediate Version | 0 | | 207 | 208 | | 267 | 4 | Current Version | 0 | | 209 | 210 | | 266 | 4 | Original Version | 0 | | 211 | 212 | | 265 | 4 | Need Tagging History Graph | 0 | | 213 | 214 | | 194 | 4 | Need Resolving History | 0 | | 215 | 216 | | 18 | 4 | Pick Label Accepted | 0 | | 217 | 218 | | 17 | 4 | Pick Label Pending | 0 | | 219 | 220 | | 16 | 4 | Pick Label Rejected | 0 | | 221 | 222 | | 15 | 4 | Pick Label None | 0 | | 223 | 224 | | 14 | 4 | Color Label White | 0 | | 225 | 226 | | 13 | 4 | Color Label Black | 0 | | 227 | 228 | | 12 | 4 | Color Label Gray | 0 | | 229 | 230 | | 11 | 4 | Color Label Magenta | 0 | | 231 | 232 | | 10 | 4 | Color Label Blue | 0 | | 233 | 234 | | 9 | 4 | Color Label Green | 0 | | 235 | 236 | | 8 | 4 | Color Label Yellow | 0 | | 237 | 238 | | 7 | 4 | Color Label Orange | 0 | | 239 | 240 | | 6 | 4 | Color Label Red | 0 | | 241 | 242 | | 5 | 4 | Color Label None | 0 | | 243 | 244 | | 1 | 0 | _Digikam_root_tag_ | 0 | | 246 | 541 | | 165 | 1 | vegetal | 0 | | 247 | 254 | | 179 | 165 | vigne | 0 | | 248 | 249 | | 166 | 165 | fleur | 0 | | 250 | 253 | | 180 | 166 | coquelicot | 0 | | 251 | 252 | | 148 | 1 | reptile | 0 | | 255 | 260 | | 157 | 148 | lezard | 0 | | 256 | 257 | | 149 | 148 | grenouille | 0 | | 258 | 259 | | 110 | 1 | vegetaux | 0 | | 261 | 268 | | 189 | 110 | fleur | 0 | | 262 | 265 | | 190 | 189 | perceneige | 0 | | 263 | 264 | | 111 | 110 | algue | 0 | | 266 | 267 | | 108 | 1 | volvo-240 | 0 | | 269 | 270 | | 92 | 1 | arenicole | 0 | | 271 | 272 | | 43 | 1 | poisson | 0 | | 273 | 290 | | 172 | 43 | maigre | 0 | | 274 | 275 | | 126 | 43 | cabillaud | 0 | | 276 | 277 | | 121 | 43 | turbot | 0 | | 278 | 279 | | 106 | 43 | petite roussette | 0 | | 280 | 281 | | 104 | 43 | vieille | 0 | | 282 | 283 | | 95 | 43 | raie | 0 | | 284 | 285 | | 89 | 43 | sole | 0 | | 286 | 287 | | 44 | 43 | bar | 0 | | 288 | 289 | | 41 | 1 | trombine | 0 | | 291 | 342 | | 264 | 41 | matthis | 0 | | 292 | 293 | | 246 | 41 | hassan | 0 | | 294 | 295 | | 245 | 41 | mathias | 0 | | 296 | 297 | | 244 | 41 | phil | 0 | | 298 | 299 | | 219 | 41 | julien | 0 | | 300 | 301 | | 210 | 41 | florian | 0 | | 302 | 303 | | 199 | 41 | jenny | 0 | | 304 | 305 | | 184 | 41 | oxanne | 0 | | 306 | 307 | | 170 | 41 | crapule | 0 | | 308 | 309 | | 155 | 41 | vincent | 0 | | 310 | 311 | | 138 | 41 | xavier | 0 | | 312 | 313 | | 135 | 41 | magalie | 0 | | 314 | 315 | | 133 | 41 | francoise | 0 | | 316 | 317 | | 132 | 41 | andre | 0 | | 318 | 319 | | 80 | 41 | whitney | 0 | | 320 | 321 | | 79 | 41 | kenzo | 0 | | 322 | 323 | | 75 | 41 | viviane | 0 | | 324 | 325 | | 74 | 41 | joel | 0 | | 326 | 327 | | 73 | 41 | simba | 0 | | 328 | 329 | | 71 | 41 | allan | 0 | | 330 | 331 | | 69 | 41 | anais | 0 | | 332 | 333 | | 67 | 41 | chloe | 0 | | 334 | 335 | | 54 | 41 | christelle | 0 | | 336 | 337 | | 52 | 41 | charlotte | 0 | | 338 | 339 | | 42 | 41 | marco | 0 | | 340 | 341 | | 33 | 1 | _Digikam_root_tag_ | 0 | | 343 | 368 | | 34 | 33 | animal | 0 | | 344 | 367 | | 63 | 34 | vertebre | 0 | | 345 | 356 | | 64 | 63 | mammifere | 0 | | 346 | 355 | | 235 | 64 | herisson | 0 | | 347 | 348 | | 164 | 64 | ane | 0 | | 349 | 350 | | 162 | 64 | cheval | 0 | | 351 | 352 | | 65 | 64 | mouton | 0 | | 353 | 354 | | 35 | 34 | invertebre | 0 | | 357 | 366 | | 36 | 35 | crustace | 0 | | 358 | 365 | | 103 | 36 | araigneedemer | 0 | | 359 | 360 | | 102 | 36 | araignéedemer | 0 | | 361 | 362 | | 37 | 36 | callianasse | 0 | | 363 | 364 | | 31 | 1 | crustace | 0 | | 369 | 374 | | 101 | 31 | araignéedemer | 0 | | 370 | 371 | | 32 | 31 | callianasse | 0 | | 372 | 373 | | 19 | 1 | animal | 0 | | 375 | 460 | | 84 | 19 | invertebre | 0 | | 376 | 421 | | 187 | 84 | crustace | 0 | | 377 | 380 | | 188 | 187 | crabe | 0 | | 378 | 379 | | 171 | 84 | insecte | 0 | | 381 | 384 | | 193 | 171 | coccinelle | 0 | | 382 | 383 | | 114 | 84 | cnidaire | 0 | | 385 | 390 | | 145 | 114 | etoile de mer | 0 | | 386 | 387 | | 115 | 114 | anemone | 0 | | 388 | 389 | | 93 | 84 | mollusque | 0 | | 391 | 412 | | 257 | 93 | buccin | 0 | | 392 | 393 | | 256 | 93 | littorine | 0 | | 394 | 395 | | 255 | 93 | patelle | 0 | | 396 | 397 | | 254 | 93 | huitre | 0 | | 398 | 399 | | 249 | 93 | crepidule | 0 | | 400 | 401 | | 213 | 93 | telline | 0 | | 402 | 403 | | 208 | 93 | praire | 0 | | 404 | 405 | | 196 | 93 | couteau | 0 | | 406 | 407 | | 195 | 93 | coque | 0 | | 408 | 409 | | 94 | 93 | moule | 0 | | 410 | 411 | | 85 | 84 | ver | 0 | | 413 | 420 | | 253 | 85 | nereis | 0 | | 414 | 415 | | 207 | 85 | ver coréen | 0 | | 416 | 417 | | 86 | 85 | arenicole | 0 | | 418 | 419 | | 20 | 19 | vertebre | 0 | | 422 | 459 | | 77 | 20 | poisson | 0 | | 423 | 430 | | 239 | 77 | congre | 0 | | 424 | 425 | | 109 | 77 | emissole | 0 | | 426 | 427 | | 78 | 77 | dorade | 0 | | 428 | 429 | | 28 | 20 | oiseau | 0 | | 431 | 442 | | 261 | 28 | paon | 0 | | 432 | 433 | | 225 | 28 | sitelle | 0 | | 434 | 435 | | 168 | 28 | rapace | 0 | | 436 | 437 | | 68 | 28 | faisan | 0 | | 438 | 439 | | 29 | 28 | goeland | 0 | | 440 | 441 | | 21 | 20 | mammifere | 0 | | 443 | 458 | | 262 | 21 | ragondin | 0 | | 444 | 445 | | 227 | 21 | cerf-biche | 0 | | 446 | 447 | | 202 | 21 | chevreuil | 0 | | 448 | 449 | | 181 | 21 | chat | 0 | | 450 | 451 | | 159 | 21 | vache | 0 | | 452 | 453 | | 83 | 21 | sanglier | 0 | | 454 | 455 | | 22 | 21 | mustelide | 0 | | 456 | 457 | | 2 | 1 | lieu | 0 | | 461 | 540 | | 243 | 2 | dakhla | 0 | | 462 | 463 | | 233 | 2 | Jetee du dyck | 0 | | 464 | 465 | | 224 | 2 | Minerve | 0 | | 466 | 467 | | 223 | 2 | Sigean | 0 | | 468 | 469 | | 222 | 2 | Santiago | 0 | | 470 | 471 | | 221 | 2 | San Francisco | 0 | | 472 | 473 | | 220 | 2 | Torreira | 0 | | 474 | 475 | | 201 | 2 | crecy | 0 | | 476 | 477 | | 186 | 2 | clipon | 0 | | 478 | 479 | | 185 | 2 | berlou | 0 | | 480 | 481 | | 183 | 2 | sete | 0 | | 482 | 483 | | 178 | 2 | cahors | 0 | | 484 | 485 | | 177 | 2 | vendee | 0 | | 486 | 487 | | 176 | 2 | pointe de la coubre | 0 | | 488 | 489 | | 175 | 2 | vert bois | 0 | | 490 | 491 | | 174 | 2 | pointedegatseau | 0 | | 492 | 493 | | 152 | 2 | embellie | 0 | | 494 | 495 | | 147 | 2 | lestouches | 0 | | 496 | 497 | | 146 | 2 | pointeespagnole | 0 | | 498 | 499 | | 144 | 2 | ronce les bains | 0 | | 500 | 501 | | 136 | 2 | saumonard | 0 | | 502 | 503 | | 134 | 2 | cessenonorb | 0 | | 504 | 505 | | 131 | 2 | dauphinbleu | 0 | | 506 | 507 | | 130 | 2 | carnot | 0 | | 508 | 509 | | 129 | 2 | capgrisnez | 0 | | 510 | 511 | | 125 | 2 | ruytingen | 0 | | 512 | 513 | | 120 | 2 | bretignolles la sauzaie | 0 | | 514 | 515 | | 91 | 2 | Chevret | 0 | | 516 | 517 | | 88 | 2 | rondins gravelines | 0 | | 518 | 519 | | 87 | 2 | dunkerque | 0 | | 520 | 521 | | 82 | 2 | mormal | 0 | | 522 | 523 | | 81 | 2 | annoeullin | 0 | | 524 | 525 | | 76 | 2 | Vendres | 0 | | 526 | 527 | | 72 | 2 | cazedarnes | 0 | | 528 | 529 | | 70 | 2 | gorgedheric | 0 | | 530 | 531 | | 66 | 55 | amsterdam | 0 | | 532 | 533 | | 53 | 2 | oye plage | 0 | | 534 | 535 | | 30 | 2 | diguebreak | 0 | | 536 | 537 | | 3 | 2 | capblancnez | 0 | | 538 | 539 | | NULL | NULL | NULL | NULL | NULL | NULL | NULL | + ------- + -------- + --------- + --------- + ------------ + -------- + -------- + 272 rows There must not be two _Digikam_root_tag. The second _Digikam_root_tag has a left value of 246 and a right value of 541. This mean I think that it has been created after the first one with incorrect left and right values. This occur every time I created a new Digikam database in all the case : - One database for Digikam data and thumbs data. - two database, one for digikam data and one for thumbs data. - new fresh install of mysql server and linux with different versions. - Database or Databases are always on a remote server in my local network Why ? I continue to search . Greatings, Eric
Hello, This is what is read for a picture with two tags "_Digikam_root_tag" and some other tags with no "_Digikam_root_tag", using /Album/reread metadata : --- digikam(14382)/KEXIV2 KExiv2Iface::KExiv2::getXmpTagStringSeq: XMP String Seq ( Xmp.digiKam.TagsList ): ("_Digikam_root_tag_/lieu/lestouches", "lieu/lestouches", "animal/vertebre/mammifere/ane", "lestouches", "animal", "animal/vertebre", "animal/vertebre/mammifere", "lieu2/lestouches", "_Digikam_root_tag_/_Digikam_root_tag_/animal", "_Digikam_root_tag_/_Digikam_root_tag_/animal/vertebre", "_Digikam_root_tag_/_Digikam_root_tag_/animal/vertebre/mammifere", "_Digikam_root_tag_/_Digikam_root_tag_/lieu/lestouches", "_Digikam_root_tag_/lieu2/lestouches", "_Digikam_root_tag_/_Digikam_root_tag_/animal/vertebre/mammifere/ane") --- This is the list of Digikam Component : (/help/view component) -- digiKam version 2.8.0 Codec PGF parallélisé: Non Composant graphique Marble: 0.13.4 (stable release) Dématriçage parallélisé: Oui Exiv2 peut écrire dans un fichier JP2: Oui Exiv2 peut écrire dans un fichier JPEG: Oui Exiv2 peut écrire dans un fichier PGF: Oui Exiv2 peut écrire dans un fichier PNG: Oui Exiv2 peut écrire dans un fichier TIFF: Oui Exiv2 prend en charge les métadonnées XMP: Oui LibCImg: 130 LibClapack: bibliothèque interne LibExiv2: 0.23 LibJPEG: 80 LibJasper: 1.900.1 LibKDE: 4.8.5 (4.8.5) LibKExiv2: 2.3.0 LibKGeoMap: 2.0.0 LibKdcraw: 2.1.0 LibLCMS: 2020 LibLensFun: bibliothèque partagée externe LibLqr: bibliothèque interne LibPGF: 6.12.27 - bibliothèque interne LibPNG: 1.2.46 LibQt: 4.8.1 LibRaw: 0.14.7 LibTIFF: LIBTIFF, Version 3.9.5 Copyright (c) 1988-1996 Sam Leffler Copyright (c) 1991-1996 Silicon Graphics, Inc. LibGphoto2: 2.4.14 LibKface: 2.0.0 LibKipi: 1.6.0 LibOpenCV: 2.4.2 Libface: 0.2 Moteur de base de données: QMYSQL Serveur interne de base de données: Non -- Greatings, Eric
Hello again, Logs from Digikam : -------- supress wrongs tags : sub from _Digikam_root_tag and apply digikam(14382)/KEXIV2 KExiv2Iface::KExiv2::KExiv2Priv::printExiv2MessageHandler: Exiv2 ( 2 ) : Directory Minolta, entry 0x0088: Data area exceeds data buffer, ignoring it. digikam(14382)/digikam (core) Digikam::DMetadata::setImageTitles: "/media/Diskphotos/charente 2010 aout/PICT1750.JPG" ==> Title: QMap() digikam(14382)/digikam (core) Digikam::DMetadata::setImageComments: "/media/Diskphotos/charente 2010 aout/PICT1750.JPG" ==> Comment: QMap(("x-default", CaptionValues::caption: "KONICA MINOLTA DIGITAL CAMERA", CaptionValues::author: "", CaptionValues::date: QDateTime("") ) ) digikam(14382)/digikam (core) Digikam::DMetadata::setImagePickLabel: "/media/Diskphotos/charente 2010 aout/PICT1750.JPG" ==> Pick Label: 0 digikam(14382)/digikam (core) Digikam::DMetadata::setImageColorLabel: "/media/Diskphotos/charente 2010 aout/PICT1750.JPG" ==> Color Label: 0 digikam(14382)/digikam (core) Digikam::DMetadata::setImageRating: Rating value to write is out of range! digikam(14382)/KEXIV2 KExiv2Iface::KExiv2::getXmpTagStringSeq: XMP String Seq ( Xmp.digiKam.TagsList ): ("_Digikam_root_tag_/lieu/lestouches", "lieu/lestouches", "animal/vertebre/mammifere/ane", "lestouches", "animal", "animal/vertebre", "animal/vertebre/mammifere", "lieu2/lestouches", "_Digikam_root_tag_/_Digikam_root_tag_/animal", "_Digikam_root_tag_/_Digikam_root_tag_/animal/vertebre", "_Digikam_root_tag_/_Digikam_root_tag_/animal/vertebre/mammifere", "_Digikam_root_tag_/lieu2/lestouches", "_Digikam_root_tag_/_Digikam_root_tag_/animal/vertebre/mammifere/ane", "_Digikam_root_tag_/animal", "_Digikam_root_tag_/animal/vertebre/mammifere/ane", "_Digikam_root_tag_/animal/vertebre", "_Digikam_root_tag_/animal/vertebre/mammifere", "_Digikam_root_tag_/lieu2", "_Digikam_root_tag_/_Digikam_root_tag_/lieu/lestouches") digikam(14382)/KEXIV2 KExiv2Iface::KExiv2::setIptcKeywords: /media/Diskphotos/charente 2010 aout/PICT1750.JPG ==> Iptc Keywords: animal,vertebre,mammifere,lieu2,lestouches,ane digikam(14382)/KEXIV2 KExiv2Iface::KExiv2::save: KExiv2::metadataWritingMode 0 digikam(14382)/KEXIV2 KExiv2Iface::KExiv2::save: Will write Metadata to file "PICT1750.JPG" digikam(14382)/KEXIV2 KExiv2Iface::KExiv2::KExiv2Priv::saveToFile: File Extension: "jpg" is supported for writing mode digikam(14382)/KEXIV2 KExiv2Iface::KExiv2::KExiv2Priv::printExiv2MessageHandler: Exiv2 ( 2 ) : Directory Minolta, entry 0x0088: Data area exceeds data buffer, ignoring it. digikam(14382)/kio (Scheduler) KIO::SchedulerPrivate::doJob: KIO::SimpleJob(0xa8a3030) digikam(14382)/KEXIV2 KExiv2Iface::KExiv2::KExiv2Priv::printExiv2MessageHandler: Exiv2 ( 2 ) : Directory Minolta, entry 0x0088: Data area exceeds data buffer, ignoring it. digikam(14382)/KEXIV2 KExiv2Iface::KExiv2::save: Metadata for file "PICT1750.JPG" written to file. digikam(14382)/KEXIV2 KExiv2Iface::KExiv2::KExiv2Priv::printExiv2MessageHandler: Exiv2 ( 2 ) : Directory Minolta, entry 0x0088: Data area exceeds data buffer, ignoring it. digikam(14382)/digikam (core) Digikam::DImg::load: "/media/Diskphotos/charente 2010 aout/PICT1750.JPG" : JPEG file identified digikam(14382)/digikam (core) Digikam::AlbumWatch::rescanDirectory: Detected change, triggering rescan of directory "/media/Diskphotos/charente 2010 aout" digikam(14382)/digikam (core) Digikam::AlbumWatch::rescanDirectory: Detected change, triggering rescan of directory "/media/Diskphotos/charente 2010 aout" digikam(14382)/digikam (core) Digikam::AlbumWatch::rescanDirectory: Detected change, triggering rescan of directory "/media/Diskphotos/charente 2010 aout" digikam(14382)/digikam (core) Digikam::AlbumWatch::rescanDirectory: Detected change, triggering rescan of directory "/media/Diskphotos/charente 2010 aout" digikam(14382)/digikam (core) Digikam::AlbumWatch::rescanDirectory: Detected change, triggering rescan of directory "/media/Diskphotos/charente 2010 aout" digikam(14382)/kio (KIOJob) KIO::TransferJob::slotFinished: KUrl("digikamtags:/45/46/61/163?databaseType=QMYSQL&databaseName=digikam&connectOptions=&hostName=192.168.1.2&port=3306&userName=sospcdk&password=******") digikam(14382)/kio (Scheduler) KIO::SchedulerPrivate::jobFinished: KIO::SpecialJob(0xa8a3030) KIO::Slave(0xcdd2aa8) digikam(14382)/KEXIV2 KExiv2Iface::KExiv2::KExiv2Priv::printExiv2MessageHandler: Exiv2 ( 2 ) : Directory Minolta, entry 0x0088: Data area exceeds data buffer, ignoring it. digikam(14382)/digikam (core) Digikam::DImg::load: "/media/Diskphotos/charente 2010 aout/PICT1750.JPG" : JPEG file identified digikam(14382)/KEXIV2 KExiv2Iface::KExiv2::KExiv2Priv::printExiv2MessageHandler: Exiv2 ( 2 ) : Directory Minolta, entry 0x0088: Data area exceeds data buffer, ignoring it. digikam(14382)/KEXIV2 KExiv2Iface::KExiv2::KExiv2Priv::printExiv2MessageHandler: Exiv2 ( 2 ) : Directory Minolta, entry 0x0088: Data area exceeds data buffer, ignoring it. digikam(14382)/digikam (core) Digikam::DImg::load: "/media/Diskphotos/charente 2010 aout/PICT1750.JPG" : JPEG file identified digikam(14382)/digikam (core) Digikam::DImg::load: "/media/Diskphotos/charente 2010 aout/PICT1750.JPG" : JPEG file identified digikam(14382)/KEXIV2 KExiv2Iface::KExiv2::getImageOrientation: Orientation => Exif.Image.Orientation => 1 digikam(14382)/KEXIV2 KExiv2Iface::KExiv2::getImageOrientation: Orientation => Exif.Image.Orientation => 1 digikam(14382)/KEXIV2 KExiv2Iface::KExiv2::getImageOrientation: Orientation => Exif.Image.Orientation => 1 digikam(14382)/kio (Scheduler) KIO::SchedulerPrivate::doJob: KIO::SimpleJob(0xb758550) digikam(14382)/kio (Scheduler) KIO::SchedulerPrivate::doJob: KIO::SimpleJob(0xa617fb8) digikam(14382)/kio (KIOJob) KIO::TransferJob::slotFinished: KUrl("digikamtags:?databaseType=QMYSQL&databaseName=digikam&connectOptions=&hostName=192.168.1.2&port=3306&userName=sospcdk&password=******") digikam(14382)/kio (Scheduler) KIO::SchedulerPrivate::jobFinished: KIO::SpecialJob(0xb758550) KIO::Slave(0xcdd2aa8) digikam(14382)/kio (KIOJob) KIO::TransferJob::slotFinished: KUrl("digikamtags:?databaseType=QMYSQL&databaseName=digikam&connectOptions=&hostName=192.168.1.2&port=3306&userName=sospcdk&password=******") digikam(14382)/kio (Scheduler) KIO::SchedulerPrivate::jobFinished: KIO::SpecialJob(0xa617fb8) KIO::Slave(0xcdd2aa8) --------------------reread metadata ------- digikam(14382)/kio (Scheduler) KIO::SchedulerPrivate::doJob: KIO::SimpleJob(0xcbd1fc8) digikam(14382)/kio (KIOJob) KIO::TransferJob::slotFinished: KUrl("digikamtags:/45/46/61/163?databaseType=QMYSQL&databaseName=digikam&connectOptions=&hostName=192.168.1.2&port=3306&userName=sospcdk&password=******") digikam(14382)/kio (Scheduler) KIO::SchedulerPrivate::jobFinished: KIO::SpecialJob(0xcbd1fc8) KIO::Slave(0xcdd2aa8) digikam(14382)/KEXIV2 KExiv2Iface::KExiv2::KExiv2Priv::printExiv2MessageHandler: Exiv2 ( 2 ) : Directory Minolta, entry 0x0088: Data area exceeds data buffer, ignoring it. digikam(14382)/digikam (core) Digikam::DImg::load: "/media/Diskphotos/charente 2010 aout/PICT1750.JPG" : JPEG file identified digikam(14382)/KEXIV2 KExiv2Iface::KExiv2::getImageDateTime: DateTime => Exif.Photo.DateTimeOriginal => QDateTime("Wed Aug 18 19:01:51 2010") digikam(14382)/KEXIV2 KExiv2Iface::KExiv2::getDigitizationDateTime: DateTime (Exif digitalized): Wed Aug 18 19:01:51 2010 digikam(14382)/KEXIV2 KExiv2Iface::KExiv2::getImageOrientation: Orientation => Exif.Image.Orientation => 1 digikam(14382)/KEXIV2 KExiv2Iface::KExiv2::getXmpTagStringSeq: XMP String Seq ( Xmp.digiKam.TagsList ): ("_Digikam_root_tag_/lieu/lestouches", "lieu/lestouches", "animal/vertebre/mammifere/ane", "lestouches", "animal", "animal/vertebre", "animal/vertebre/mammifere", "lieu2/lestouches", "_Digikam_root_tag_/_Digikam_root_tag_/animal", "_Digikam_root_tag_/_Digikam_root_tag_/animal/vertebre", "_Digikam_root_tag_/_Digikam_root_tag_/animal/vertebre/mammifere", "_Digikam_root_tag_/lieu2/lestouches", "_Digikam_root_tag_/_Digikam_root_tag_/animal/vertebre/mammifere/ane", "_Digikam_root_tag_/animal", "_Digikam_root_tag_/animal/vertebre/mammifere/ane", "_Digikam_root_tag_/animal/vertebre", "_Digikam_root_tag_/animal/vertebre/mammifere", "_Digikam_root_tag_/lieu2") digikam(14382)/digikam (core) Digikam::ImageScanner::scanTags: Pick Label found : 0 digikam(14382)/digikam (core) Digikam::ImageScanner::scanTags: Assigned Pick Label Tag : 15 digikam(14382)/digikam (core) Digikam::ImageScanner::scanTags: Color Label found : 0 digikam(14382)/digikam (core) Digikam::ImageScanner::scanTags: Assigned Color Label Tag : 5 digikam(14382)/digikam (core) Digikam::DMetadata::getImageHistory: Loading image history "" digikam(14382)/kio (Scheduler) KIO::SchedulerPrivate::doJob: KIO::SimpleJob(0xa620600) digikam(14382)/kio (Scheduler) KIO::SchedulerPrivate::doJob: KIO::SimpleJob(0xb04bf68) digikam(14382)/kio (KIOJob) KIO::TransferJob::slotFinished: KUrl("digikamtags:?databaseType=QMYSQL&databaseName=digikam&connectOptions=&hostName=192.168.1.2&port=3306&userName=sospcdk&password=******") digikam(14382)/kio (Scheduler) KIO::SchedulerPrivate::jobFinished: KIO::SpecialJob(0xa620600) KIO::Slave(0xcdd2aa8) digikam(14382)/kio (KIOJob) KIO::TransferJob::slotFinished: KUrl("digikamtags:?databaseType=QMYSQL&databaseName=digikam&connectOptions=&hostName=192.168.1.2&port=3306&userName=sospcdk&password=******") digikam(14382)/kio (Scheduler) KIO::SchedulerPrivate::jobFinished: KIO::SpecialJob(0xb04bf68) KIO::Slave(0xcdd2aa8) digikam(14382)/kdeui (KNotification) KNotificationManager::notificationClosed: 15 --------- wrong _digikam_root_tag reappear in digikam - Greatings, Eric
Hello, result of : exiv2 -pa filename /media/Diskphotos/charente\ 2010\ aout/PICT1750.JPG filename: Échec de l'ouverture du fichier Warning: Directory Minolta, entry 0x0088: Data area exceeds data buffer, ignoring it. /media/Diskphotos/charente 2010 aout/PICT1750.JPG Exif.Image.ProcessingSoftware Ascii 14 digiKam-2.8.0 /media/Diskphotos/charente 2010 aout/PICT1750.JPG Exif.Image.ImageDescription Ascii 30 KONICA MINOLTA DIGITAL CAMERA /media/Diskphotos/charente 2010 aout/PICT1750.JPG Exif.Image.Make Ascii 16 KONICA MINOLTA /media/Diskphotos/charente 2010 aout/PICT1750.JPG Exif.Image.Model Ascii 10 DiMAGE Z3 /media/Diskphotos/charente 2010 aout/PICT1750.JPG Exif.Image.Orientation Short 1 haut, gauche /media/Diskphotos/charente 2010 aout/PICT1750.JPG Exif.Image.XResolution Rational 1 72 /media/Diskphotos/charente 2010 aout/PICT1750.JPG Exif.Image.YResolution Rational 1 72 /media/Diskphotos/charente 2010 aout/PICT1750.JPG Exif.Image.ResolutionUnit Short 1 Pouce /media/Diskphotos/charente 2010 aout/PICT1750.JPG Exif.Image.Software Ascii 16 DiMAGE Z3 v1.03 /media/Diskphotos/charente 2010 aout/PICT1750.JPG Exif.Image.DateTime Ascii 20 2010:08:18 19:01:51 /media/Diskphotos/charente 2010 aout/PICT1750.JPG Exif.Image.YCbCrPositioning Short 1 Centré /media/Diskphotos/charente 2010 aout/PICT1750.JPG Exif.Image.ExifTag Long 1 410 /media/Diskphotos/charente 2010 aout/PICT1750.JPG Exif.Photo.ExposureTime Rational 1 1/125 s /media/Diskphotos/charente 2010 aout/PICT1750.JPG Exif.Photo.FNumber Rational 1 F4 /media/Diskphotos/charente 2010 aout/PICT1750.JPG Exif.Photo.ExposureProgram Short 1 Programme Action /media/Diskphotos/charente 2010 aout/PICT1750.JPG Exif.Photo.ISOSpeedRatings Short 1 50 /media/Diskphotos/charente 2010 aout/PICT1750.JPG Exif.Photo.ExifVersion Undefined 4 2.20 /media/Diskphotos/charente 2010 aout/PICT1750.JPG Exif.Photo.DateTimeOriginal Ascii 20 2010:08:18 19:01:51 /media/Diskphotos/charente 2010 aout/PICT1750.JPG Exif.Photo.DateTimeDigitized Ascii 20 2010:08:18 19:01:51 /media/Diskphotos/charente 2010 aout/PICT1750.JPG Exif.Photo.ComponentsConfiguration Undefined 4 YCbCr /media/Diskphotos/charente 2010 aout/PICT1750.JPG Exif.Photo.BrightnessValue SRational 1 7.1 /media/Diskphotos/charente 2010 aout/PICT1750.JPG Exif.Photo.ExposureBiasValue SRational 1 0 EV /media/Diskphotos/charente 2010 aout/PICT1750.JPG Exif.Photo.MaxApertureValue Rational 1 F4 /media/Diskphotos/charente 2010 aout/PICT1750.JPG Exif.Photo.MeteringMode Short 1 Multi-segments /media/Diskphotos/charente 2010 aout/PICT1750.JPG Exif.Photo.LightSource Short 1 Inconnu /media/Diskphotos/charente 2010 aout/PICT1750.JPG Exif.Photo.Flash Short 1 Non, mode auto /media/Diskphotos/charente 2010 aout/PICT1750.JPG Exif.Photo.FocalLength Rational 1 22.3 mm /media/Diskphotos/charente 2010 aout/PICT1750.JPG Exif.Photo.SubjectArea Short 4 1136 852 280 280 /media/Diskphotos/charente 2010 aout/PICT1750.JPG Exif.Photo.MakerNote Undefined 33216 (Valeur binaire supprimée) /media/Diskphotos/charente 2010 aout/PICT1750.JPG Exif.MakerNote.Offset Long 1 920 /media/Diskphotos/charente 2010 aout/PICT1750.JPG Exif.MakerNote.ByteOrder Ascii 3 MM /media/Diskphotos/charente 2010 aout/PICT1750.JPG Exif.Minolta.Version Undefined 4 77 76 84 48 /media/Diskphotos/charente 2010 aout/PICT1750.JPG Exif.Minolta.ImageStabilizationData Undefined 4042 (Valeur binaire supprimée) /media/Diskphotos/charente 2010 aout/PICT1750.JPG Exif.Minolta.WBInfoA100 Undefined 4384 (Valeur binaire supprimée) /media/Diskphotos/charente 2010 aout/PICT1750.JPG Exif.Minolta.CompressedImageSize Long 1 1634269 /media/Diskphotos/charente 2010 aout/PICT1750.JPG Exif.Minolta.ThumbnailOffset Long 1 34136 /media/Diskphotos/charente 2010 aout/PICT1750.JPG Exif.Minolta.ThumbnailLength Long 1 57785 /media/Diskphotos/charente 2010 aout/PICT1750.JPG Exif.Minolta.SceneMode Long 1 Sports /media/Diskphotos/charente 2010 aout/PICT1750.JPG Exif.Minolta.ColorMode Long 1 Naturel /media/Diskphotos/charente 2010 aout/PICT1750.JPG Exif.Minolta.Quality Long 1 Fin /media/Diskphotos/charente 2010 aout/PICT1750.JPG Exif.Minolta.FlashExposureComp SRational 1 0 EV /media/Diskphotos/charente 2010 aout/PICT1750.JPG Exif.Minolta.Teleconverter Long 1 Aucun /media/Diskphotos/charente 2010 aout/PICT1750.JPG Exif.Minolta.ImageStabilization Long 0 /media/Diskphotos/charente 2010 aout/PICT1750.JPG Exif.Photo.UserComment Undefined 37 KONICA MINOLTA DIGITAL CAMERA /media/Diskphotos/charente 2010 aout/PICT1750.JPG Exif.Photo.FlashpixVersion Undefined 4 1.00 /media/Diskphotos/charente 2010 aout/PICT1750.JPG Exif.Photo.ColorSpace Short 1 sRGB /media/Diskphotos/charente 2010 aout/PICT1750.JPG Exif.Photo.PixelXDimension Long 1 2272 /media/Diskphotos/charente 2010 aout/PICT1750.JPG Exif.Photo.PixelYDimension Long 1 1704 /media/Diskphotos/charente 2010 aout/PICT1750.JPG Exif.Photo.InteroperabilityTag Long 1 34182 /media/Diskphotos/charente 2010 aout/PICT1750.JPG Exif.Iop.InteroperabilityIndex Ascii 4 R98 /media/Diskphotos/charente 2010 aout/PICT1750.JPG Exif.Iop.InteroperabilityVersion Undefined 4 1.00 /media/Diskphotos/charente 2010 aout/PICT1750.JPG Exif.Photo.CustomRendered Short 1 Processus normal /media/Diskphotos/charente 2010 aout/PICT1750.JPG Exif.Photo.ExposureMode Short 1 Automatique /media/Diskphotos/charente 2010 aout/PICT1750.JPG Exif.Photo.WhiteBalance Short 1 Automatique /media/Diskphotos/charente 2010 aout/PICT1750.JPG Exif.Photo.DigitalZoomRatio Rational 1 0.0 /media/Diskphotos/charente 2010 aout/PICT1750.JPG Exif.Photo.FocalLengthIn35mmFilm Short 1 137.0 mm /media/Diskphotos/charente 2010 aout/PICT1750.JPG Exif.Photo.SceneCaptureType Short 1 Standard /media/Diskphotos/charente 2010 aout/PICT1750.JPG Exif.Photo.GainControl Short 1 Aucun /media/Diskphotos/charente 2010 aout/PICT1750.JPG Exif.Photo.Contrast Short 1 Normal /media/Diskphotos/charente 2010 aout/PICT1750.JPG Exif.Photo.Saturation Short 1 Normal /media/Diskphotos/charente 2010 aout/PICT1750.JPG Exif.Photo.Sharpness Short 1 Normal /media/Diskphotos/charente 2010 aout/PICT1750.JPG Exif.Photo.SubjectDistanceRange Short 1 Plan large /media/Diskphotos/charente 2010 aout/PICT1750.JPG Exif.Image.PrintImageMatching Undefined 118 80 114 105 110 116 73 77 0 48 50 53 48 0 0 0 5 0 1 0 22 0 22 0 2 1 0 0 0 0 3 0 0 0 46 1 0 1 0 0 0 1 1 0 0 0 0 0 0 17 9 0 0 39 16 0 0 15 11 0 0 39 16 0 0 5 151 0 0 39 16 0 0 8 176 0 0 39 16 0 0 28 1 0 0 39 16 0 0 2 94 0 0 39 16 0 0 0 139 0 0 39 16 0 0 3 203 0 0 39 16 0 0 27 229 0 0 39 16 /media/Diskphotos/charente 2010 aout/PICT1750.JPG Exif.Thumbnail.Compression Short 1 JPEG (ancienne version) /media/Diskphotos/charente 2010 aout/PICT1750.JPG Exif.Thumbnail.Orientation Short 1 haut, gauche /media/Diskphotos/charente 2010 aout/PICT1750.JPG Exif.Thumbnail.XResolution Rational 1 72 /media/Diskphotos/charente 2010 aout/PICT1750.JPG Exif.Thumbnail.YResolution Rational 1 72 /media/Diskphotos/charente 2010 aout/PICT1750.JPG Exif.Thumbnail.ResolutionUnit Short 1 Pouce /media/Diskphotos/charente 2010 aout/PICT1750.JPG Exif.Thumbnail.JPEGInterchangeFormat Long 1 34330 /media/Diskphotos/charente 2010 aout/PICT1750.JPG Exif.Thumbnail.JPEGInterchangeFormatLength Long 1 3723 /media/Diskphotos/charente 2010 aout/PICT1750.JPG Exif.Thumbnail.YCbCrPositioning Short 1 Centré /media/Diskphotos/charente 2010 aout/PICT1750.JPG Iptc.Application2.Program String 7 digiKam /media/Diskphotos/charente 2010 aout/PICT1750.JPG Iptc.Application2.ProgramVersion String 5 2.8.0 /media/Diskphotos/charente 2010 aout/PICT1750.JPG Iptc.Application2.DateCreated Date 8 2010-08-18 /media/Diskphotos/charente 2010 aout/PICT1750.JPG Iptc.Application2.TimeCreated Time 11 19:01:51+00:00 /media/Diskphotos/charente 2010 aout/PICT1750.JPG Iptc.Application2.Keywords String 0 /media/Diskphotos/charente 2010 aout/PICT1750.JPG Iptc.Application2.Caption String 29 KONICA MINOLTA DIGITAL CAMERA /media/Diskphotos/charente 2010 aout/PICT1750.JPG Iptc.Application2.Keywords String 6 animal /media/Diskphotos/charente 2010 aout/PICT1750.JPG Iptc.Application2.Keywords String 8 vertebre /media/Diskphotos/charente 2010 aout/PICT1750.JPG Iptc.Application2.Keywords String 9 mammifere /media/Diskphotos/charente 2010 aout/PICT1750.JPG Iptc.Application2.Keywords String 5 lieu2 /media/Diskphotos/charente 2010 aout/PICT1750.JPG Iptc.Application2.Keywords String 10 lestouches /media/Diskphotos/charente 2010 aout/PICT1750.JPG Iptc.Application2.Keywords String 3 ane /media/Diskphotos/charente 2010 aout/PICT1750.JPG Xmp.tiff.Software XmpText 13 digiKam-2.8.0 /media/Diskphotos/charente 2010 aout/PICT1750.JPG Xmp.tiff.DateTime XmpText 19 2010-08-18T19:01:51 /media/Diskphotos/charente 2010 aout/PICT1750.JPG Xmp.tiff.Orientation XmpText 1 haut, gauche /media/Diskphotos/charente 2010 aout/PICT1750.JPG Xmp.tiff.YCbCrPositioning XmpText 1 Centré /media/Diskphotos/charente 2010 aout/PICT1750.JPG Xmp.tiff.XResolution XmpText 4 72 /media/Diskphotos/charente 2010 aout/PICT1750.JPG Xmp.tiff.YResolution XmpText 4 72 /media/Diskphotos/charente 2010 aout/PICT1750.JPG Xmp.tiff.ResolutionUnit XmpText 1 Pouce /media/Diskphotos/charente 2010 aout/PICT1750.JPG Xmp.tiff.Make XmpText 15 KONICA MINOLTA /media/Diskphotos/charente 2010 aout/PICT1750.JPG Xmp.tiff.Model XmpText 9 DiMAGE Z3 /media/Diskphotos/charente 2010 aout/PICT1750.JPG Xmp.tiff.ImageDescription LangAlt 1 lang="x-default" KONICA MINOLTA DIGITAL CAMERA /media/Diskphotos/charente 2010 aout/PICT1750.JPG Xmp.xmp.CreatorTool XmpText 13 digiKam-2.5.0 /media/Diskphotos/charente 2010 aout/PICT1750.JPG Xmp.xmp.CreateDate XmpText 19 2010-08-18T19:01:51 /media/Diskphotos/charente 2010 aout/PICT1750.JPG Xmp.xmp.MetadataDate XmpText 19 2010-08-18T19:01:51 /media/Diskphotos/charente 2010 aout/PICT1750.JPG Xmp.xmp.ModifyDate XmpText 19 2010-08-18T19:01:51 /media/Diskphotos/charente 2010 aout/PICT1750.JPG Xmp.digiKam.PickLabel XmpText 1 0 /media/Diskphotos/charente 2010 aout/PICT1750.JPG Xmp.digiKam.ColorLabel XmpText 1 0 /media/Diskphotos/charente 2010 aout/PICT1750.JPG Xmp.digiKam.TagsList XmpSeq 18 _Digikam_root_tag_/lieu/lestouches, lieu/lestouches, animal/vertebre/mammifere/ane, lestouches, animal, animal/vertebre, animal/vertebre/mammifere, lieu2/lestouches, _Digikam_root_tag_/_Digikam_root_tag_/animal, _Digikam_root_tag_/_Digikam_root_tag_/animal/vertebre, _Digikam_root_tag_/_Digikam_root_tag_/animal/vertebre/mammifere, _Digikam_root_tag_/lieu2/lestouches, _Digikam_root_tag_/_Digikam_root_tag_/animal/vertebre/mammifere/ane, _Digikam_root_tag_/animal, _Digikam_root_tag_/animal/vertebre/mammifere/ane, _Digikam_root_tag_/animal/vertebre, _Digikam_root_tag_/animal/vertebre/mammifere, _Digikam_root_tag_/lieu2 /media/Diskphotos/charente 2010 aout/PICT1750.JPG Xmp.digiKam.CaptionsAuthorNames LangAlt 1 lang="x-default" /media/Diskphotos/charente 2010 aout/PICT1750.JPG Xmp.digiKam.CaptionsDateTimeStamps LangAlt 1 lang="x-default" /media/Diskphotos/charente 2010 aout/PICT1750.JPG Xmp.exif.DateTimeOriginal XmpText 19 2010:08:18 19:01:51 /media/Diskphotos/charente 2010 aout/PICT1750.JPG Xmp.exif.ExifVersion XmpText 4 2.20 /media/Diskphotos/charente 2010 aout/PICT1750.JPG Xmp.exif.FlashpixVersion XmpText 4 1.00 /media/Diskphotos/charente 2010 aout/PICT1750.JPG Xmp.exif.ColorSpace XmpText 1 sRGB /media/Diskphotos/charente 2010 aout/PICT1750.JPG Xmp.exif.PixelXDimension XmpText 4 2272 /media/Diskphotos/charente 2010 aout/PICT1750.JPG Xmp.exif.PixelYDimension XmpText 4 1704 /media/Diskphotos/charente 2010 aout/PICT1750.JPG Xmp.exif.DateTimeDigitized XmpText 19 2010-08-18T19:01:51 /media/Diskphotos/charente 2010 aout/PICT1750.JPG Xmp.exif.ExposureTime XmpText 5 1/125 /media/Diskphotos/charente 2010 aout/PICT1750.JPG Xmp.exif.FNumber XmpText 5 F4 /media/Diskphotos/charente 2010 aout/PICT1750.JPG Xmp.exif.ExposureProgram XmpText 1 Programme Action /media/Diskphotos/charente 2010 aout/PICT1750.JPG Xmp.exif.BrightnessValue XmpText 5 7.1 /media/Diskphotos/charente 2010 aout/PICT1750.JPG Xmp.exif.ExposureBiasValue XmpText 4 0 EV /media/Diskphotos/charente 2010 aout/PICT1750.JPG Xmp.exif.MaxApertureValue XmpText 7 400/100 /media/Diskphotos/charente 2010 aout/PICT1750.JPG Xmp.exif.MeteringMode XmpText 1 Multi-segments /media/Diskphotos/charente 2010 aout/PICT1750.JPG Xmp.exif.LightSource XmpText 1 Inconnu /media/Diskphotos/charente 2010 aout/PICT1750.JPG Xmp.exif.FocalLength XmpText 13 22.3 mm /media/Diskphotos/charente 2010 aout/PICT1750.JPG Xmp.exif.CustomRendered XmpText 1 Processus normal /media/Diskphotos/charente 2010 aout/PICT1750.JPG Xmp.exif.ExposureMode XmpText 1 Automatique /media/Diskphotos/charente 2010 aout/PICT1750.JPG Xmp.exif.WhiteBalance XmpText 1 Automatique /media/Diskphotos/charente 2010 aout/PICT1750.JPG Xmp.exif.DigitalZoomRatio XmpText 4 0/10 /media/Diskphotos/charente 2010 aout/PICT1750.JPG Xmp.exif.FocalLengthIn35mmFilm XmpText 3 137 /media/Diskphotos/charente 2010 aout/PICT1750.JPG Xmp.exif.SceneCaptureType XmpText 1 Standard /media/Diskphotos/charente 2010 aout/PICT1750.JPG Xmp.exif.GainControl XmpText 1 Aucun /media/Diskphotos/charente 2010 aout/PICT1750.JPG Xmp.exif.Contrast XmpText 1 Normal /media/Diskphotos/charente 2010 aout/PICT1750.JPG Xmp.exif.Saturation XmpText 1 Normal /media/Diskphotos/charente 2010 aout/PICT1750.JPG Xmp.exif.Sharpness XmpText 1 Normal /media/Diskphotos/charente 2010 aout/PICT1750.JPG Xmp.exif.SubjectDistanceRange XmpText 1 Plan large /media/Diskphotos/charente 2010 aout/PICT1750.JPG Xmp.exif.ComponentsConfiguration XmpSeq 4 YCbCr /media/Diskphotos/charente 2010 aout/PICT1750.JPG Xmp.exif.ISOSpeedRatings XmpSeq 1 50 /media/Diskphotos/charente 2010 aout/PICT1750.JPG Xmp.exif.Flash XmpText 0 type="Struct" /media/Diskphotos/charente 2010 aout/PICT1750.JPG Xmp.exif.Flash/exif:Fired XmpText 5 False /media/Diskphotos/charente 2010 aout/PICT1750.JPG Xmp.exif.Flash/exif:Return XmpText 1 0 /media/Diskphotos/charente 2010 aout/PICT1750.JPG Xmp.exif.Flash/exif:Mode XmpText 1 3 /media/Diskphotos/charente 2010 aout/PICT1750.JPG Xmp.exif.Flash/exif:Function XmpText 5 False /media/Diskphotos/charente 2010 aout/PICT1750.JPG Xmp.exif.Flash/exif:RedEyeMode XmpText 5 False /media/Diskphotos/charente 2010 aout/PICT1750.JPG Xmp.exif.SubjectArea XmpSeq 1 1136 852 280 280 /media/Diskphotos/charente 2010 aout/PICT1750.JPG Xmp.exif.UserComment LangAlt 1 lang="x-default" KONICA MINOLTA DIGITAL CAMERA /media/Diskphotos/charente 2010 aout/PICT1750.JPG Xmp.photoshop.DateCreated XmpText 19 2010-08-18T19:01:51 /media/Diskphotos/charente 2010 aout/PICT1750.JPG Xmp.dc.subject XmpBag 6 animal, vertebre, mammifere, lieu2, lestouches, ane /media/Diskphotos/charente 2010 aout/PICT1750.JPG Xmp.dc.description LangAlt 1 lang="x-default" KONICA MINOLTA DIGITAL CAMERA /media/Diskphotos/charente 2010 aout/PICT1750.JPG Xmp.MicrosoftPhoto.LastKeywordXMP XmpSeq 18 _Digikam_root_tag_/lieu/lestouches, lieu/lestouches, animal/vertebre/mammifere/ane, lestouches, animal, animal/vertebre, animal/vertebre/mammifere, lieu2/lestouches, _Digikam_root_tag_/_Digikam_root_tag_/animal, _Digikam_root_tag_/_Digikam_root_tag_/animal/vertebre, _Digikam_root_tag_/_Digikam_root_tag_/animal/vertebre/mammifere, _Digikam_root_tag_/lieu2/lestouches, _Digikam_root_tag_/_Digikam_root_tag_/animal/vertebre/mammifere/ane, _Digikam_root_tag_/animal, _Digikam_root_tag_/animal/vertebre/mammifere/ane, _Digikam_root_tag_/animal/vertebre, _Digikam_root_tag_/animal/vertebre/mammifere, _Digikam_root_tag_/lieu2 /media/Diskphotos/charente 2010 aout/PICT1750.JPG Xmp.lr.hierarchicalSubject XmpBag 18 _Digikam_root_tag_|lieu|lestouches, lieu|lestouches, animal|vertebre|mammifere|ane, lestouches, animal, animal|vertebre, animal|vertebre|mammifere, lieu2|lestouches, _Digikam_root_tag_|_Digikam_root_tag_|animal, _Digikam_root_tag_|_Digikam_root_tag_|animal|vertebre, _Digikam_root_tag_|_Digikam_root_tag_|animal|vertebre|mammifere, _Digikam_root_tag_|lieu2|lestouches, _Digikam_root_tag_|_Digikam_root_tag_|animal|vertebre|mammifere|ane, _Digikam_root_tag_|animal, _Digikam_root_tag_|animal|vertebre|mammifere|ane, _Digikam_root_tag_|animal|vertebre, _Digikam_root_tag_|animal|vertebre|mammifere, _Digikam_root_tag_|lieu2 Greatings, Eric
Hello, In XMP.digiKam.TagsList they are some _Digikam_root_tag, I think this is not a normal thing ? -- Xmp.digiKam.TagsList XmpSeq 18 _Digikam_root_tag_/lieu/lestouches, lieu/lestouches, animal/vertebre/mammifere/ane, lestouches, animal, animal/vertebre, animal/vertebre/mammifere, lieu2/lestouches, _Digikam_root_tag_/_Digikam_root_tag_/animal, _Digikam_root_tag_/_Digikam_root_tag_/animal/vertebre, _Digikam_root_tag_/_Digikam_root_tag_/animal/vertebre/mammifere, _Digikam_root_tag_/lieu2/lestouches, _Digikam_root_tag_/_Digikam_root_tag_/animal/vertebre/mammifere/ane, _Digikam_root_tag_/animal, _Digikam_root_tag_/animal/vertebre/mammifere/ane, _Digikam_root_tag_/animal/vertebre, _Digikam_root_tag_/animal/vertebre/mammifere, _Digikam_root_tag_/lieu2 -- Is it or not ? Greatings, Eric
yes, it's abnormal, but not reproducible here with sqlite DB Gilles Caulier
Thank you, I had this link for those (and me) who want to understand how digikams tags are created and modified : https://bugs.kde.org/show_bug.cgi?id=268688 Greatings, Eric
Hello, 1 - backup all pictures 1.5 - closed Digikam 2 - I have removed all metadata from pictures with : exiftool -xmp:LastKeywordXMP= -xmp:TagsList= -xmp:hierarchicalSubject= *.jpg 3 - I have removed all digikam and thumbnail databases tables 4 - restart digikam (which create new tables and ask to add a new collection) - I reset as it was before suppress tables. 5 - this is what I get now, no more multiple _Digikam_root_tag : Query Output: > SELECT * FROM digikam.Tags ORDER BY lft + ------- + -------- + --------- + --------- + ------------ + -------- + -------- + | id | pid | name | icon | iconkde | lft | rgt | + ------- + -------- + --------- + --------- + ------------ + -------- + -------- + | 0 | -1 | _Digikam_root_tag_ | 0 | | 1 | 430 | | 209 | 0 | matthis | 0 | | 2 | 3 | | 208 | 0 | ragondin | 0 | | 4 | 5 | | 205 | 0 | paon | 0 | | 6 | 7 | | 204 | 0 | brochet | 0 | | 8 | 9 | | 203 | 0 | buccin | 0 | | 10 | 11 | | 202 | 0 | littorine | 0 | | 12 | 13 | | 201 | 0 | patelle | 0 | | 14 | 15 | | 200 | 0 | huitre | 0 | | 16 | 17 | | 199 | 0 | nereis | 0 | | 18 | 19 | | 196 | 0 | chassiron | 0 | | 20 | 21 | | 195 | 0 | crepidule | 0 | | 22 | 23 | | 193 | 0 | marbré | 0 | | 24 | 25 | | 191 | 0 | hassan | 0 | | 26 | 27 | | 190 | 0 | mathias | 0 | | 28 | 29 | | 189 | 0 | phil | 0 | | 30 | 31 | | 188 | 0 | dakhla | 0 | | 32 | 33 | | 186 | 0 | merlan | 0 | | 34 | 35 | | 185 | 0 | congre | 0 | | 36 | 37 | | 182 | 0 | flet | 0 | | 38 | 39 | | 181 | 0 | herisson | 0 | | 40 | 41 | | 180 | 0 | Jetee du dyck | 0 | | 42 | 43 | | 178 | 0 | grande castagnole | 0 | | 44 | 45 | | 177 | 0 | tournehem | 0 | | 46 | 47 | | 176 | 0 | cerf-biche | 0 | | 48 | 49 | | 175 | 0 | sitelle | 0 | | 50 | 51 | | 174 | 0 | Minerve | 0 | | 52 | 53 | | 173 | 0 | Sigean | 0 | | 54 | 55 | | 172 | 0 | Santiago | 0 | | 56 | 57 | | 171 | 0 | San Francisco | 0 | | 58 | 59 | | 170 | 0 | Torreira | 0 | | 60 | 61 | | 165 | 0 | girelle | 0 | | 62 | 63 | | 163 | 0 | sar | 0 | | 64 | 65 | | 162 | 0 | telline | 0 | | 66 | 67 | | 160 | 0 | mulet | 0 | | 68 | 69 | | 159 | 0 | florian | 0 | | 70 | 71 | | 157 | 0 | praire | 0 | | 72 | 73 | | 155 | 0 | ver coréen | 0 | | 74 | 75 | | 154 | 0 | platja de la marquesa | 0 | | 76 | 77 | | 153 | 0 | sardine | 0 | | 78 | 79 | | 151 | 0 | chevreuil | 0 | | 80 | 81 | | 150 | 0 | crecy | 0 | | 82 | 83 | | 149 | 0 | creche | 0 | | 84 | 85 | | 148 | 0 | jenny | 0 | | 86 | 87 | | 147 | 0 | cranpoulet | 0 | | 88 | 89 | | 146 | 0 | cranauxoeufs | 0 | | 90 | 91 | | 145 | 0 | couteau | 0 | | 92 | 93 | | 144 | 0 | coque | 0 | | 94 | 95 | | 142 | 0 | perceneige | 0 | | 96 | 97 | | 141 | 0 | coccinelle | 0 | | 98 | 99 | | 139 | 0 | crabe | 0 | | 100 | 101 | | 138 | 0 | clipon | 0 | | 102 | 103 | | 137 | 0 | berlou | 0 | | 104 | 105 | | 136 | 0 | oxanne | 0 | | 106 | 107 | | 135 | 0 | sete | 0 | | 108 | 109 | | 134 | 0 | chat | 0 | | 110 | 111 | | 133 | 0 | coquelicot | 0 | | 112 | 113 | | 132 | 0 | vigne | 0 | | 114 | 115 | | 131 | 0 | cahors | 0 | | 116 | 117 | | 130 | 0 | vendee | 0 | | 118 | 119 | | 129 | 0 | pointe de la coubre | 0 | | 120 | 121 | | 128 | 0 | vert bois | 0 | | 122 | 123 | | 127 | 0 | pointedegatseau | 0 | | 124 | 125 | | 126 | 0 | grenouille | 0 | | 126 | 127 | | 125 | 0 | maigre | 0 | | 128 | 129 | | 124 | 0 | insecte | 0 | | 130 | 131 | | 123 | 0 | crapule | 0 | | 132 | 133 | | 122 | 0 | aigrette | 0 | | 134 | 135 | | 121 | 0 | rapace | 0 | | 136 | 137 | | 120 | 0 | vanneau | 0 | | 138 | 139 | | 119 | 0 | fleur | 0 | | 140 | 141 | | 118 | 0 | ane | 0 | | 142 | 143 | | 117 | 0 | lieu2 | 0 | | 144 | 145 | | 116 | 0 | cheval | 0 | | 146 | 147 | | 115 | 0 | heron | 0 | | 148 | 149 | | 114 | 0 | vache | 0 | | 150 | 151 | | 113 | 0 | hirondelle | 0 | | 152 | 153 | | 112 | 0 | vincent | 0 | | 154 | 155 | | 111 | 0 | cigogne | 0 | | 156 | 157 | | 110 | 0 | embellie | 0 | | 158 | 159 | | 109 | 0 | lestouches | 0 | | 160 | 161 | | 108 | 0 | pointeespagnole | 0 | | 162 | 163 | | 106 | 0 | etoile de mer | 0 | | 164 | 165 | | 104 | 0 | lieu | 0 | | 166 | 183 | | 206 | 104 | bretignolles la sauzaie | 0 | | 167 | 168 | | 198 | 104 | vert bois | 0 | | 169 | 170 | | 183 | 104 | creche | 0 | | 171 | 172 | | 167 | 104 | dyck | 0 | | 173 | 174 | | 158 | 104 | riumar | 0 | | 175 | 176 | | 156 | 104 | platja de la marquesa | 0 | | 177 | 178 | | 107 | 104 | saumonard | 0 | | 179 | 180 | | 105 | 104 | ronce les bains | 0 | | 181 | 182 | | 103 | 0 | ronce les bains | 0 | | 184 | 185 | | 102 | 0 | tente | 0 | | 186 | 187 | | 99 | 0 | fort boyard | 0 | | 188 | 189 | | 97 | 0 | trombine | 0 | | 190 | 201 | | 192 | 97 | hassan | 0 | | 191 | 192 | | 169 | 97 | marco | 0 | | 193 | 194 | | 168 | 97 | julien | 0 | | 195 | 196 | | 100 | 97 | gribouille | 0 | | 197 | 198 | | 98 | 97 | xavier | 0 | | 199 | 200 | | 95 | 0 | tacaud | 0 | | 202 | 203 | | 94 | 0 | xavier | 0 | | 204 | 205 | | 93 | 0 | saumonard | 0 | | 206 | 207 | | 92 | 0 | magalie | 0 | | 208 | 209 | | 91 | 0 | cessenonorb | 0 | | 210 | 211 | | 90 | 0 | francoise | 0 | | 212 | 213 | | 89 | 0 | andre | 0 | | 214 | 215 | | 88 | 0 | dauphinbleu | 0 | | 216 | 217 | | 87 | 0 | carnot | 0 | | 218 | 219 | | 86 | 0 | capgrisnez | 0 | | 220 | 221 | | 85 | 0 | ruytingen | 0 | | 222 | 223 | | 84 | 0 | plomb grappin | 0 | | 224 | 225 | | 82 | 0 | cabillaud | 0 | | 226 | 227 | | 81 | 0 | turbot | 0 | | 228 | 229 | | 80 | 0 | bretignolles la sauzaie | 0 | | 230 | 231 | | 79 | 0 | maquereau | 0 | | 232 | 233 | | 78 | 0 | lancon | 0 | | 234 | 235 | | 77 | 0 | anemone | 0 | | 236 | 237 | | 76 | 0 | cnidaire | 0 | | 238 | 239 | | 75 | 0 | emissole | 0 | | 240 | 241 | | 74 | 0 | petite roussette | 0 | | 242 | 243 | | 73 | 0 | vieille | 0 | | 244 | 245 | | 72 | 0 | araignéedemer | 0 | | 246 | 247 | | 71 | 0 | araigneedemer | 0 | | 248 | 249 | | 70 | 0 | raie | 0 | | 250 | 251 | | 69 | 0 | moule | 0 | | 252 | 253 | | 68 | 0 | mollusque | 0 | | 254 | 255 | | 67 | 0 | Chevret | 0 | | 256 | 257 | | 66 | 0 | sole | 0 | | 258 | 259 | | 65 | 0 | rondins gravelines | 0 | | 260 | 261 | | 64 | 0 | dunkerque | 0 | | 262 | 263 | | 63 | 0 | arenicole | 0 | | 264 | 265 | | 62 | 0 | ver | 0 | | 266 | 267 | | 61 | 0 | sanglier | 0 | | 268 | 269 | | 60 | 0 | mormal | 0 | | 270 | 271 | | 59 | 0 | annoeullin | 0 | | 272 | 273 | | 58 | 0 | whitney | 0 | | 274 | 275 | | 57 | 0 | kenzo | 0 | | 276 | 277 | | 56 | 0 | dorade | 0 | | 278 | 279 | | 55 | 0 | Vendres | 0 | | 280 | 281 | | 54 | 0 | viviane | 0 | | 282 | 283 | | 53 | 0 | joel | 0 | | 284 | 285 | | 52 | 0 | simba | 0 | | 286 | 287 | | 51 | 0 | cazedarnes | 0 | | 288 | 289 | | 50 | 0 | allan | 0 | | 290 | 291 | | 49 | 0 | gorgedheric | 0 | | 292 | 293 | | 48 | 0 | anais | 0 | | 294 | 295 | | 47 | 0 | faisan | 0 | | 296 | 297 | | 46 | 0 | chloe | 0 | | 298 | 299 | | 45 | 0 | amsterdam | 0 | | 300 | 301 | | 44 | 0 | mouton | 0 | | 302 | 303 | | 43 | 0 | animal2 | 0 | | 304 | 305 | | 42 | 0 | canard | 0 | | 306 | 307 | | 41 | 0 | cygne | 0 | | 308 | 309 | | 40 | 0 | salsperwick | 0 | | 310 | 311 | | 39 | 0 | gonzague | 0 | | 312 | 313 | | 38 | 0 | christelle | 0 | | 314 | 315 | | 37 | 0 | oye plage | 0 | | 316 | 317 | | 36 | 0 | charlotte | 0 | | 318 | 319 | | 34 | 0 | anguille | 0 | | 320 | 321 | | 32 | 0 | bar | 0 | | 322 | 323 | | 31 | 0 | poisson | 0 | | 324 | 355 | | 207 | 31 | turbot | 0 | | 325 | 326 | | 197 | 31 | congre | 0 | | 327 | 328 | | 194 | 31 | marbré | 0 | | 329 | 330 | | 187 | 31 | merlan | 0 | | 331 | 332 | | 184 | 31 | flet | 0 | | 333 | 334 | | 179 | 31 | grande castagnole | 0 | | 335 | 336 | | 166 | 31 | girelle | 0 | | 337 | 338 | | 164 | 31 | sar | 0 | | 339 | 340 | | 161 | 31 | mulet | 0 | | 341 | 342 | | 152 | 31 | maigre | 0 | | 343 | 344 | | 101 | 31 | dorade | 0 | | 345 | 346 | | 96 | 31 | tacaud | 0 | | 347 | 348 | | 83 | 31 | cabillaud | 0 | | 349 | 350 | | 35 | 31 | anguille | 0 | | 351 | 352 | | 33 | 31 | bar | 0 | | 353 | 354 | | 30 | 0 | marco | 0 | | 356 | 357 | | 29 | 0 | volvo-240 | 0 | | 358 | 359 | | 28 | 0 | callianasse | 0 | | 360 | 361 | | 27 | 0 | crustace | 0 | | 362 | 365 | | 140 | 27 | crabe | 0 | | 363 | 364 | | 26 | 0 | invertebre | 0 | | 366 | 367 | | 25 | 0 | diguebreak | 0 | | 368 | 369 | | 24 | 0 | goeland | 0 | | 370 | 371 | | 23 | 0 | oiseau | 0 | | 372 | 373 | | 22 | 0 | gribouille | 0 | | 374 | 375 | | 21 | 0 | eric | 0 | | 376 | 377 | | 20 | 0 | mustelide | 0 | | 378 | 379 | | 19 | 0 | mammifere | 0 | | 380 | 381 | | 18 | 0 | vertebre | 0 | | 382 | 383 | | 17 | 0 | animal | 0 | | 384 | 385 | | 2 | 0 | _Digikam_Internal_Tags_ | 0 | | 386 | 427 | | 214 | 2 | Version Always Visible | 0 | | 387 | 388 | | 213 | 2 | Intermediate Version | 0 | | 389 | 390 | | 212 | 2 | Current Version | 0 | | 391 | 392 | | 211 | 2 | Original Version | 0 | | 393 | 394 | | 210 | 2 | Need Tagging History Graph | 0 | | 395 | 396 | | 143 | 2 | Need Resolving History | 0 | | 397 | 398 | | 16 | 2 | Pick Label Accepted | 0 | | 399 | 400 | | 15 | 2 | Pick Label Pending | 0 | | 401 | 402 | | 14 | 2 | Pick Label Rejected | 0 | | 403 | 404 | | 13 | 2 | Pick Label None | 0 | | 405 | 406 | | 12 | 2 | Color Label White | 0 | | 407 | 408 | | 11 | 2 | Color Label Black | 0 | | 409 | 410 | | 10 | 2 | Color Label Gray | 0 | | 411 | 412 | | 9 | 2 | Color Label Magenta | 0 | | 413 | 414 | | 8 | 2 | Color Label Blue | 0 | | 415 | 416 | | 7 | 2 | Color Label Green | 0 | | 417 | 418 | | 6 | 2 | Color Label Yellow | 0 | | 419 | 420 | | 5 | 2 | Color Label Orange | 0 | | 421 | 422 | | 4 | 2 | Color Label Red | 0 | | 423 | 424 | | 3 | 2 | Color Label None | 0 | | 425 | 426 | | 1 | 0 | capblancnez | 0 | | 428 | 429 | | NULL | NULL | NULL | NULL | NULL | NULL | NULL | + ------- + -------- + --------- + --------- + ------------ + -------- + -------- + 216 rows I will try now to reorganise as near all the tag hierarchy have been lost. And look if I got multiple _Digikam_root_tag back. Greatings, Eric
Hello, I remove tag animal (uncheck on the tags left pannel), then check animal2, then apply. This is what I got now in a picture which was having tag animal, suppressef, and was tagging with animal2 : Xmp.digiKam.TagsList XmpSeq 5 animal, vertebre, oiseau, faisan, _Digikam_root_tag_/animal2 Other tags are : Xmp.MicrosoftPhoto.LastKeywordXMP XmpSeq 5 animal, vertebre, oiseau, faisan, _Digikam_root_tag_/animal2 Xmp.lr.hierarchicalSubject XmpBag 5 animal, vertebre, oiseau, faisan, _Digikam_root_tag_|animal2 No change in table digikam.Tags animal and animal2 still there with same id, lft and rgt. Greatings, Eric
Hello, reread from digikam, metadata from the picture (/more in tags left panel, then read ...). - No change in table digikam.tags - No change in the picture tags (same as precedent post) But, I have retag multiple images with same action (remove animal, check animal2 and apply). For the one I have reread, animal is check again, no tag _Digikam_root_tag appear in left tags and right tags panel, but with a right click on the image I should see : - remove a tag - _Digikam_root_tag / animal Other tags are right. Greatings, Eric
The tricky thing is that in image tags I have /_Digikam_root_tag_/animal2. And in supress tag menu (right click on picture) I have /_Digikam_root_tag_/animal. Greatings, Eric
Table tags for tag animal and animal2 : id pid name icon iconkde lft rgt 17 0 animal 0 null 384 385 43 0 animal2 0 null 304 305 Query Output for animal: > SELECT * FROM digikam.Tags WHERE lft BETWEEN 384 AND 385 ORDER BY lft ASC + ------- + -------- + --------- + --------- + ------------ + -------- + -------- + | id | pid | name | icon | iconkde | lft | rgt | + ------- + -------- + --------- + --------- + ------------ + -------- + -------- + | 17 | 0 | animal | 0 | | 384 | 385 | | NULL | NULL | NULL | NULL | NULL | NULL | NULL | + ------- + -------- + --------- + --------- + ------------ + -------- + -------- + 2 rows
Query Output for animal2: > SELECT * FROM digikam.Tags WHERE lft BETWEEN 304 AND 305 ORDER BY lft ASC + ------- + -------- + --------- + --------- + ------------ + -------- + -------- + | id | pid | name | icon | iconkde | lft | rgt | + ------- + -------- + --------- + --------- + ------------ + -------- + -------- + | 43 | 0 | animal2 | 0 | | 304 | 305 | | NULL | NULL | NULL | NULL | NULL | NULL | NULL | + ------- + -------- + --------- + --------- + ------------ + -------- + -------- + 2 rows
Get parent for animal : Query Output: > SELECT * FROM digikam.Tags WHERE lft < 384 AND rgt > 385 ORDER BY lft ASC + ------- + -------- + --------- + --------- + ------------ + -------- + -------- + | id | pid | name | icon | iconkde | lft | rgt | + ------- + -------- + --------- + --------- + ------------ + -------- + -------- + | 0 | -1 | _Digikam_root_tag_ | 0 | | 1 | 430 | | NULL | NULL | NULL | NULL | NULL | NULL | NULL | + ------- + -------- + --------- + --------- + ------------ + -------- + -------- + 2 rows
Get parent for animal2 Query Output: > SELECT * FROM digikam.Tags WHERE lft < 304 AND rgt > 305 ORDER BY lft ASC + ------- + -------- + --------- + --------- + ------------ + -------- + -------- + | id | pid | name | icon | iconkde | lft | rgt | + ------- + -------- + --------- + --------- + ------------ + -------- + -------- + | 0 | -1 | _Digikam_root_tag_ | 0 | | 1 | 430 | | NULL | NULL | NULL | NULL | NULL | NULL | NULL | + ------- + -------- + --------- + --------- + ------------ + -------- + -------- + 2 rows
Another link that explain what are lft and rgt values : http://www.sitepoint.com/hierarchical-data-database-2/
Hello, Don't modify anything since removed tag animal and write tag animal2 The medadatas of the file are: ---- /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Exif.Image.ProcessingSoftware Ascii 14 digiKam-2.8.0 /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Exif.Image.Make Ascii 18 Minolta Co., Ltd. /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Exif.Image.Model Ascii 10 DiMAGE Z1 /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Exif.Image.Orientation Short 1 haut, gauche /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Exif.Image.XResolution Rational 1 72 /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Exif.Image.YResolution Rational 1 72 /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Exif.Image.ResolutionUnit Short 1 Pouce /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Exif.Image.Software Ascii 11 GIMP 2.4.1 /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Exif.Image.DateTime Ascii 20 2008:05:10 19:27:13 /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Exif.Image.YCbCrPositioning Short 1 Co-sited /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Exif.Image.ExifTag Long 1 288 /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Exif.Photo.ExposureTime Rational 1 1/400 s /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Exif.Photo.FNumber Rational 1 F3.5 /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Exif.Photo.ExposureProgram Short 1 Automatique /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Exif.Photo.ISOSpeedRatings Short 1 80 /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Exif.Photo.ExifVersion Undefined 4 2.20 /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Exif.Photo.DateTimeOriginal Ascii 20 2008:05:10 19:27:13 /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Exif.Photo.DateTimeDigitized Ascii 20 2008:05:10 19:27:13 /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Exif.Photo.ComponentsConfiguration Undefined 4 YCbCr /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Exif.Photo.CompressedBitsPerPixel Rational 1 4 /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Exif.Photo.BrightnessValue SRational 1 6.2 /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Exif.Photo.ExposureBiasValue SRational 1 0 EV /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Exif.Photo.MaxApertureValue Rational 1 F3.5 /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Exif.Photo.MeteringMode Short 1 Multi-segments /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Exif.Photo.LightSource Short 1 Inconnu /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Exif.Photo.Flash Short 1 Non, inhibé /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Exif.Photo.FocalLength Rational 1 58.0 mm /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Exif.Photo.SubjectArea Short 4 1024 768 44 29 /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Exif.Photo.MakerNote Undefined 760 (Valeur binaire supprimée) /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Exif.MakerNote.Offset Long 1 830 /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Exif.MakerNote.ByteOrder Ascii 3 II /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Exif.Minolta.Version Undefined 4 77 76 89 48 /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Exif.Minolta.ThumbnailOffset Long 1 1590 /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Exif.Minolta.ThumbnailLength Long 1 36340 /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Exif.Minolta.SceneMode Long 1 Ensoleillé /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Exif.Minolta.ColorMode Long 1 Couleur naturelle /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Exif.Minolta.Quality Long 1 Fin /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Exif.Minolta.FlashExposureComp SRational 1 (0/0) /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Exif.Minolta.Teleconverter Long 1 Aucun /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Exif.Minolta.CameraSettingsZ1 Undefined 614 (Valeur binaire supprimée) /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Exif.Photo.FlashpixVersion Undefined 4 1.00 /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Exif.Photo.ColorSpace Short 1 sRGB /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Exif.Photo.PixelXDimension Long 1 2048 /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Exif.Photo.PixelYDimension Long 1 1536 /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Exif.Photo.InteroperabilityTag Long 1 1598 /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Exif.Iop.InteroperabilityIndex Ascii 4 R98 /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Exif.Iop.InteroperabilityVersion Undefined 4 1.00 /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Exif.Photo.FileSource Undefined 1 Appareil photo numérique /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Exif.Photo.SceneType Undefined 1 Photographié directement /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Exif.Photo.CustomRendered Short 1 Processus personnel /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Exif.Photo.ExposureMode Short 1 Automatique /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Exif.Photo.WhiteBalance Short 1 Automatique /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Exif.Photo.DigitalZoomRatio Rational 1 0.0 /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Exif.Photo.FocalLengthIn35mmFilm Short 1 380.0 mm /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Exif.Photo.SceneCaptureType Short 1 Standard /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Exif.Photo.GainControl Short 1 Aucun /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Exif.Photo.Contrast Short 1 Normal /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Exif.Photo.Saturation Short 1 Normal /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Exif.Photo.Sharpness Short 1 Normal /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Exif.Photo.SubjectDistanceRange Short 1 Plan large /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Exif.Image.PrintImageMatching Undefined 40 80 114 105 110 116 73 77 0 48 50 53 48 0 0 4 0 1 0 22 0 22 0 2 0 0 0 0 1 0 1 0 0 0 1 1 1 0 0 0 0 /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Exif.Thumbnail.Compression Short 1 JPEG (ancienne version) /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Exif.Thumbnail.XResolution Rational 1 72 /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Exif.Thumbnail.YResolution Rational 1 72 /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Exif.Thumbnail.ResolutionUnit Short 1 Pouce /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Exif.Thumbnail.JPEGInterchangeFormat Long 1 1722 /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Exif.Thumbnail.JPEGInterchangeFormatLength Long 1 9886 /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Iptc.Application2.Program String 7 digiKam /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Iptc.Application2.ProgramVersion String 5 2.8.0 /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Iptc.Application2.DateCreated Date 8 2008-05-10 /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Iptc.Application2.TimeCreated Time 11 19:27:13+00:00 /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Iptc.Application2.Keywords String 6 faisan /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Iptc.Application2.Keywords String 8 vertebre /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Iptc.Application2.Keywords String 6 oiseau /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Iptc.Application2.Keywords String 7 animal2 /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Xmp.digiKam.ColorLabel XmpText 1 0 /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Xmp.digiKam.PickLabel XmpText 1 0 /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Xmp.digiKam.TagsList XmpSeq 5 animal, vertebre, oiseau, faisan, _Digikam_root_tag_/animal2 /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Xmp.exif.BrightnessValue XmpText 5 6.2 /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Xmp.exif.ColorSpace XmpText 1 sRGB /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Xmp.exif.CompressedBitsPerPixel XmpText 3 4/1 /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Xmp.exif.Contrast XmpText 1 Normal /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Xmp.exif.CustomRendered XmpText 1 Processus personnel /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Xmp.exif.DateTimeDigitized XmpText 19 2008-05-10T19:27:13 /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Xmp.exif.DateTimeOriginal XmpText 19 2008:05:10 19:27:13 /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Xmp.exif.DigitalZoomRatio XmpText 5 0/100 /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Xmp.exif.ExifVersion XmpText 4 2.20 /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Xmp.exif.ExposureBiasValue XmpText 4 0 EV /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Xmp.exif.ExposureMode XmpText 1 Automatique /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Xmp.exif.ExposureProgram XmpText 1 Automatique /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Xmp.exif.ExposureTime XmpText 7 10/4000 /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Xmp.exif.FNumber XmpText 5 F3.5 /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Xmp.exif.FileSource XmpText 1 Appareil photo numérique /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Xmp.exif.FlashpixVersion XmpText 4 1.00 /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Xmp.exif.FocalLength XmpText 6 58.0 mm /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Xmp.exif.FocalLengthIn35mmFilm XmpText 3 380 /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Xmp.exif.GainControl XmpText 1 Aucun /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Xmp.exif.LightSource XmpText 1 Inconnu /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Xmp.exif.MaxApertureValue XmpText 5 36/10 /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Xmp.exif.MeteringMode XmpText 1 Multi-segments /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Xmp.exif.PixelXDimension XmpText 4 2048 /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Xmp.exif.PixelYDimension XmpText 4 1536 /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Xmp.exif.Saturation XmpText 1 Normal /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Xmp.exif.SceneCaptureType XmpText 1 Standard /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Xmp.exif.SceneType XmpText 1 Photographié directement /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Xmp.exif.Sharpness XmpText 1 Normal /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Xmp.exif.SubjectDistanceRange XmpText 1 Plan large /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Xmp.exif.WhiteBalance XmpText 1 Automatique /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Xmp.exif.ComponentsConfiguration XmpSeq 4 YCbCr /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Xmp.exif.Flash XmpText 0 type="Struct" /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Xmp.exif.Flash/exif:Fired XmpText 5 False /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Xmp.exif.Flash/exif:Function XmpText 5 False /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Xmp.exif.Flash/exif:Mode XmpText 1 2 /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Xmp.exif.Flash/exif:RedEyeMode XmpText 5 False /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Xmp.exif.Flash/exif:Return XmpText 1 0 /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Xmp.exif.ISOSpeedRatings XmpSeq 1 80 /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Xmp.exif.SubjectArea XmpSeq 1 1024 768 44 29 /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Xmp.photoshop.DateCreated XmpText 10 2008-05-10 /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Xmp.tiff.DateTime XmpText 19 2008-05-10T19:27:13 /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Xmp.tiff.Make XmpText 17 Minolta Co., Ltd. /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Xmp.tiff.Model XmpText 9 DiMAGE Z1 /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Xmp.tiff.Orientation XmpText 1 haut, gauche /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Xmp.tiff.ResolutionUnit XmpText 1 Pouce /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Xmp.tiff.Software XmpText 13 digiKam-2.8.0 /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Xmp.tiff.XResolution XmpText 4 72 /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Xmp.tiff.YCbCrPositioning XmpText 1 Co-sited /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Xmp.tiff.YResolution XmpText 4 72 /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Xmp.xmp.CreateDate XmpText 19 2008-05-10T19:27:13 /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Xmp.xmp.CreatorTool XmpText 13 digiKam-2.5.0 /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Xmp.xmp.MetadataDate XmpText 19 2008-05-10T19:27:13 /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Xmp.xmp.ModifyDate XmpText 19 2008-05-10T19:27:13 /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Xmp.dc.subject XmpBag 4 animal2, vertebre, oiseau, faisan /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Xmp.MicrosoftPhoto.LastKeywordXMP XmpSeq 5 animal, vertebre, oiseau, faisan, _Digikam_root_tag_/animal2 /media/Diskphotos/anvin/faisan_cran_aux_polets.jpg Xmp.lr.hierarchicalSubject XmpBag 5 animal, vertebre, oiseau, faisan, _Digikam_root_tag_|animal2 ---- A] Xmp.dc.subject XmpBag 4 animal2, vertebre, oiseau, faisan is good, and I'm sure the animal2 tag has been write by Digikam and animal removed. B ]Iptc.Application2.Keywords String 6 faisan Iptc.Application2.Keywords String 8 vertebre Iptc.Application2.Keywords String 6 oiseau Iptc.Application2.Keywords String 7 animal2 are good, animal2 tag has been write (by digikam) and animal has been removed C]Xmp.MicrosoftPhoto.LastKeywordXMP XmpSeq 5 animal, vertebre, oiseau, faisan, _Digikam_root_tag_/animal2 Has an error, animal is not removed but animal2 has been write with the _Digikam_root_tag D]Xmp.digiKam.TagsList XmpSeq 5 animal, vertebre, oiseau, faisan, _Digikam_root_tag_/animal2 For the Xmp.digikam.TagsList, it's the same as for [C], animal is not removed but animal2 has been write with the _Digikam_root_tag Is the processes to get or to write data are the same for C and D (except the Xmp "container to which the metadata are written) ? So I think there's some bug when writing or when getting tags to write, and this is the cause of some "other bugs" like database inconsistency (digikam.tags), image "disapearing when remove tags, old tags back when digikam read metadatas ... The process must not be the same between SQLITE and MYSQL as the database table Tags hasn't the same organisation (two more columns, lft and rgt, for the mysql digikam.Tags table). Is hierarchy concept different between SQLITE and MYSQL ? Greatings, Eric
Hello, Query on tags for the same image after reread the metadata (more/read metadata) : Query Output: > SELECT DISTINCT tagid, name,pid,lft,rgt FROM ImageTags,Tags WHERE imageid=1904 and tagid=id + ---------- + --------- + -------- + -------- + -------- + | tagid | name | pid | lft | rgt | + ---------- + --------- + -------- + -------- + -------- + | 3 | Color Label None | 2 | 425 | 426 | | 13 | Pick Label None | 2 | 405 | 406 | | 17 | animal | 0 | 384 | 385 | | 18 | vertebre | 0 | 382 | 383 | | 23 | oiseau | 0 | 372 | 373 | | 43 | animal2 | 0 | 304 | 305 | | 47 | faisan | 0 | 296 | 297 | + ---------- + --------- + -------- + -------- + -------- + 7 rows Nothing bad here. animal is back (it hasn't be remove from file metadata when suppress so read get it back) When right click on the image, animal appear like this /_Digikam_root_tag/animal in supress tags. Greatings, Eric
Hello, suppress animal by right click on the image,supress tag,_Digikam_root_tag_ /animal. All is good to in : Query Output: > SELECT DISTINCT tagid, name,pid,lft,rgt FROM ImageTags,Tags WHERE imageid=1904 and tagid=id + ---------- + --------- + -------- + -------- + -------- + | tagid | name | pid | lft | rgt | + ---------- + --------- + -------- + -------- + -------- + | 3 | Color Label None | 2 | 425 | 426 | | 13 | Pick Label None | 2 | 405 | 406 | | 18 | vertebre | 0 | 382 | 383 | | 23 | oiseau | 0 | 372 | 373 | | 43 | animal2 | 0 | 304 | 305 | | 47 | faisan | 0 | 296 | 297 | + ---------- + --------- + -------- + -------- + -------- + 6 rows But now when right click on picture, suppress, its _Digikam_root_tag/animal2 which appear. and I have multiple _Digikam_root_tag in the file xmp : Xmp.digiKam.TagsList XmpSeq 8 animal, vertebre, oiseau, faisan, _Digikam_root_tag_/animal2, _Digikam_root_tag_/vertebre, _Digikam_root_tag_/oiseau, _Digikam_root_tag_/faisan And tags will multiply ... so the hierarchie change with no "human readable schema" and all you tag work is gone as correct it tend to be worst and worst. I think it's not a mysql fact, i never had mysql error log, perhaps something bad in a query,, or/and in reading and in writing. Continue to looking for , Greatings, Eric
(In reply to comment #25) > Hello, > In my database I did change in table "Tags" the entry "_Digikam_root_tag_"'s > id 0 to -1. > This solved my issue. > Regards Can anyone confirm the efficiency of this `hack`?
Hello, for me it hasn't worked. The issue I think is related in the use of mysql and reading or writing tags to pictures. Now for me it works, but I decide to not write and reading tags to and from pictures. As I use Digikam for many years, with SQLITE without a problem, tags where well write to IPTC by Digikam. 1 - Migration from Digikam a) don't use the migration tool from Digikam (If tags were write before with DIGIKAM/SQLITE) b)erase the "corrupted" mysql table (if migration have been done) c)erase the corrupted tag in the pictures with something like this : exiftool -xmp:LastKeywordXMP= -xmp:TagsList= -xmp:hierarchicalSubject= *.jpg tune as you want and backup your files before d)start digikam, the collection is scan e) don't tag anything and modify the Digikam/metadata option, disable at least, write Tags (the first line) with the option f) now you should reorganise your Tags as you want Now for me it is working fine. But I can't write Tags in file. Backup you database. I will try to look ahead on this "buggi" artefact with mysql (something between the code and the database wich haven't the same schema SQLITE/MYSQL). Greatings, Eric
Hello again, >for me it hasn't worked. as I had new pictures with tags, the _Digikam_root_tag appear again, and corrupt the tags which was write to pictures ... creating new branches with pictures with same tag in a branch or another. Greatings, Eric
Hello, using Digikam without writing and reading tags metadata from pictures "solve" this too : https://bugs.kde.org/show_bug.cgi?id=230602. Greatings, Eric
Hello, you should have a look here too : http://ninedegreesbelow.com/photography/dam-software-metadata.html Greatings, Eric
related to this too : https://bugs.kde.org/show_bug.cgi?id=268688
Occured for me with digiKam 3.3.0. While tagging faces I got tag _Digikam_root_tag_ in tag list. MariaDB [digikam4]> SELECT * FROM Tags WHERE name like '%Digikam%'; +----+------+-------------------------+------+---------+-----+-----+ | id | pid | name | icon | iconkde | lft | rgt | +----+------+-------------------------+------+---------+-----+-----+ | 0 | -1 | _Digikam_root_tag_ | 0 | NULL | 1 | 136 | | 1 | 0 | _Digikam_Internal_Tags_ | 0 | NULL | 90 | 135 | | 87 | 0 | _Digikam_root_tag_ | 0 | NULL | 2 | 5 | +----+------+-------------------------+------+---------+-----+-----+ After removing _Digikam_root_tag_ from digiKam UI and restarting of digiKam I do not see any tags in digiKam, but MariaDB [digikam4]> SELECT COUNT(*) FROM Tags; +----------+ | COUNT(*) | +----------+ | 63 | +----------+ MariaDB [digikam4]> SELECT COUNT(*) FROM Tags WHERE name like '%People%'; +----------+ | COUNT(*) | +----------+ | 0 | +----------+ Looks like my DB is messed up and I have to recreate it. MySQL binlogs indicate that extra _Digikam_root_tag_ were created by following queries #130831 23:12:15 server id 1 end_log_pos 65360732 Intvar SET INSERT_ID=87/*!*/; # at 65360732 #130831 23:12:15 server id 1 end_log_pos 65360780 User_var SET @`myLeft`:=1/*!*/; # at 65360780 #130831 23:12:15 server id 1 end_log_pos 65360942 Query thread_id=8340 exec_time=0 error_code=0 SET TIMESTAMP=1377976335/*!*/; INSERT INTO Tags(name, pid, lft, rgt) VALUES('_Digikam_root_tag_', 0, @myLeft + 1, @myLeft + 2)
veaceslav, outside the fact that people try to investigate the origin of this problem by an analysis of database tag structures, i think you have solved this issue recently to drop older and unwanted tags to plug in database from image metadata. Right ? See comment #10 for details. Gilles Caulier
I added checks and sanitize functionality for Image Scanner and to metadata write functionality. But I don't know how to sanitize an existing database with _Digikam_root_tags_ in it rather than writing tags to image, drop everything and re-read them back..
The database marked with older and obsolete tags is a fact. At least with 4.2.0, these tags will must never re-appear after a cleanup of database content and a sync from image metadata to database. Gilles Caulier
To all people in this room who have experience this problem, i recommend to test with digiKam 4.2.0 where Veaceslav have patched image scanner to prevent post creation of obsolete tags in database. Gilles Caulier
*** Bug 325331 has been marked as a duplicate of this bug. ***
From Marcel Wiesweg, by private email : "I believe the root of the problem is the TagsTree table. This table is only maintained to allow searching in a tag including all child tags. In SQLite, it always worked, in MySQL, there were problems and a solution with another tree structure which I have never really understood. This tree seems to create a lot of problems. Alternative solution for the problem is to find in the C++ search code, all child tags (readily available from TagsCache), and add them as bound values (WHERE tagid IN (?,?,?....)). This was limited for SQLite which only supports 999 bound values, and that limit can be hit easily. For MySQL, the limit appears to be 65536, which is feasible. Optimizations are possible (using boost interval etc.)"
This is still an issue with digikam5.0.0-beta6 version. I'm able to reproduce it. My log: MariaDB [digikam]> select * from Tags; +----+------+----------------------------+------+---------+-----+-----+ | id | pid | name | icon | iconkde | lft | rgt | +----+------+----------------------------+------+---------+-----+-----+ | 0 | -1 | _Digikam_root_tag_ | NULL | NULL | 1 | 80 | | 1 | 0 | _Digikam_Internal_Tags_ | NULL | NULL | 38 | 79 | | 2 | 1 | Original Version | NULL | NULL | 77 | 78 | | 3 | 1 | Intermediate Version | NULL | NULL | 75 | 76 | | 4 | 1 | Current Version | NULL | NULL | 73 | 74 | | 5 | 1 | Version Always Visible | NULL | NULL | 71 | 72 | | 6 | 0 | People | NULL | NULL | 22 | 37 | | 7 | 6 | Monica Geller | NULL | NULL | 35 | 36 | | 8 | 6 | Ross Geller | NULL | NULL | 33 | 34 | | 9 | 6 | Phoebe Buffay | NULL | NULL | 31 | 32 | | 10 | 6 | Joey Tribbiani | NULL | NULL | 29 | 30 | | 11 | 0 | friends | NULL | NULL | 20 | 21 | | 12 | 6 | Chandler Bing | NULL | NULL | 27 | 28 | | 13 | 6 | Rachel Green | NULL | NULL | 25 | 26 | | 14 | 1 | Color Label None | NULL | NULL | 69 | 70 | | 15 | 1 | Color Label Red | NULL | NULL | 67 | 68 | | 16 | 1 | Color Label Orange | NULL | NULL | 65 | 66 | | 17 | 1 | Color Label Yellow | NULL | NULL | 63 | 64 | | 18 | 1 | Color Label Green | NULL | NULL | 61 | 62 | | 19 | 1 | Color Label Blue | NULL | NULL | 59 | 60 | | 20 | 1 | Color Label Magenta | NULL | NULL | 57 | 58 | | 21 | 1 | Color Label Gray | NULL | NULL | 55 | 56 | | 22 | 1 | Color Label Black | NULL | NULL | 53 | 54 | | 23 | 1 | Color Label White | NULL | NULL | 51 | 52 | | 24 | 1 | Pick Label None | NULL | NULL | 49 | 50 | | 25 | 1 | Pick Label Rejected | NULL | NULL | 47 | 48 | | 26 | 1 | Pick Label Pending | NULL | NULL | 45 | 46 | | 27 | 1 | Pick Label Accepted | NULL | NULL | 43 | 44 | | 28 | 6 | Joey Tribbianii | NULL | NULL | 23 | 24 | | 29 | 0 | singer | NULL | NULL | 10 | 19 | | 30 | 29 | adam | NULL | NULL | 17 | 18 | | 31 | 29 | ellie_goulding | NULL | NULL | 15 | 16 | | 32 | 29 | enrique | NULL | NULL | 13 | 14 | | 33 | 29 | eminem | NULL | NULL | 11 | 12 | | 34 | 1 | Need Resolving History | NULL | NULL | 41 | 42 | | 35 | 1 | Need Tagging History Graph | NULL | NULL | 39 | 40 | | 36 | 0 | smiley | NULL | NULL | 4 | 9 | | 37 | 36 | cry_laugh | NULL | NULL | 7 | 8 | | 38 | 36 | tongue_out | NULL | NULL | 5 | 6 | | 39 | 0 | nature | NULL | NULL | 2 | 3 | +----+------+----------------------------+------+---------+-----+-----+ 40 rows in set (0.00 sec)
Yes, it is. Look in Mysql DB schema : https://quickgit.kde.org/?p=digikam.git&a=blob&h=5fd4abfe3318e37cba448551a769325217590ff2&hb=ebba4691ef367bbe15bd2b2c8dfe6e582b1668f5&f=data%2Fdatabase%2Fdbconfig.xml.cmake.in#l1202 About this topic, Richard Mortimer has already take a look into this file : https://bugs.kde.org/show_bug.cgi?id=355831 ... to fix this problem with a patch, if i'm not too wrong... but this do not work. Look at comment #55 for details : https://bugs.kde.org/show_bug.cgi?id=355831#c55 And my test results at comment #59 : https://bugs.kde.org/show_bug.cgi?id=355831#c59 In all cases, there are a lots of information in bug #355831 for your GSoC 2016 project. Gilles Caulier
First step to resolve this has to be to add UNIQUE(name, pid) to the MySQL version of the Tags table (around line 1056 in dbconfig.xml.cmake). That will at least force MySQL to reject any attempts to add duplicates. Once that is done then it should be easier to find out why digikam is trying to add the duplicates in the first place.
Hello, I still use digikam 3.5 with mysql. As I don't write tags to pictures, only mysql support, I have had never again a double _digikam_root_tag. Exception : importing some images that aren't mine and that include tags (forget to erase them with exiftool before collection scan/digikam start). hope it will helps. Eric
(In reply to Richard Mortimer from comment #69) > First step to resolve this has to be to add UNIQUE(name, pid) to the MySQL > version of the Tags table (around line 1056 in dbconfig.xml.cmake). > > That will at least force MySQL to reject any attempts to add duplicates. > Once that is done then it should be easier to find out why digikam is trying > to add the duplicates in the first place. Is this fine? CREATE TABLE `Tags` ( -> `id` int(11) NOT NULL AUTO_INCREMENT, -> `pid` int(11) DEFAULT NULL UNIQUE, -> `name` varchar(100) CHARACTER SET utf8 NOT NULL UNIQUE, -> `icon` int(11) DEFAULT NULL, -> `iconkde` longtext CHARACTER SET utf8, -> `lft` int(11) NOT NULL, -> `rgt` int(11) NOT NULL, -> PRIMARY KEY (`id`), -> KEY `Tags_Images` (`icon`), -> CONSTRAINT `Tags_Images` FOREIGN KEY (`icon`) REFERENCES `Images` (`id`) ON DELETE SET NULL ON UPDATE CASCADE -> ) ENGINE=InnoDB AUTO_INCREMENT=40 DEFAULT CHARSET=utf8mb4; For column 'name' I changed from TEXT to VARCHAR ('cause it gave error: TEXT/BLOB column 'name' used in key specification without key length)
I've tended to keep LONGTEXT and use a length on the index. That way a long tag name will not totally break things - but will likely cause unexpected behaviour. Try CREATE TABLE IF NOT EXISTS Tags (id INTEGER PRIMARY KEY NOT NULL AUTO_INCREMENT, pid INTEGER, name LONGTEXT CHARACTER SET utf8 NOT NULL, icon INTEGER, iconkde LONGTEXT CHARACTER SET utf8, lft INT NOT NULL, rgt INT NOT NULL, UNIQUE(pid, name(100)), CONSTRAINT Tags_Images FOREIGN KEY (icon) REFERENCES Images (id) ON DELETE SET NULL ON UPDATE CASCADE ) ENGINE InnoDB;
Created attachment 99945 [details] To remove duplicates from Tags table
Created attachment 99951 [details] Removes _Digikam_root_tag_ from GUI
Created attachment 99954 [details] Combined patch 1) Avoid duplicates in Tags table 2) Removes _digikam_root_tag_ from UI
Looks good to me.
Created attachment 100044 [details] Please test this with latest git/master and see if this fix this issue.
Created attachment 100045 [details] Please test this with latest git/master and see if this fix this issue.
Tested here. Context : - Mysql DB from host Linux computer - DK client running on a Linux under a VM. - VM is connected to host DB through the network. - DB on host is build from scratch. * _Digikam_root_tag_ still in DB schema. It's the expected behavior ? * The _Digikam_root_tag_ is always here in Face tree-view while face scan is started, and also when the task is completed. * The initial collection scan is very slow. There is a time latency when a file is registered in DB. We can see it on the console. The collection contents is this one : digikam version 5.1.0 Images: JP2: 10 JPG: 1806 PGF: 7 PNG: 144 PPM: 2 RAW-ARW: 66 RAW-CR2: 90 RAW-CRW: 5 RAW-DCR: 2 RAW-DNG: 32 RAW-MRW: 18 RAW-NEF: 19 RAW-ORF: 4 RAW-PEF: 7 RAW-RAF: 10 RAW-RAW: 1 RAW-RW2: 8 RAW-RWL: 1 RAW-X3F: 2 TIFF: 28 total: 2262 : Videos: 3GP: 1 MKV: 1 MOV: 6 MP4: 1 total: 9 : Total Items: 2271 Albums: 196 Tags: 97 : Database backend: QMYSQL Host Name: 192.168.1.20 Host Port: 3306 User account: digikamuser Connect options: Core Db name: digikam Thumbs Db name: digikam Face Db name: digikam So for me this patch to do work the job. Gilles Caulier
(In reply to caulier.gilles from comment #79) > Tested here. Context : skip... > * _Digikam_root_tag_ still in DB schema. It's the expected behavior ? Yes. The tag would be present in the schema, but not visible in UI. > * The _Digikam_root_tag_ is always here in Face tree-view while face scan > is started, and also when the task is completed. Could you please attach a screenshot, showing _Digikam_root_tag_ in Face tree view? > Thanks for testing!
digiKam 5.1.0 screenhot with root tag in face tree-view: https://www.flickr.com/photos/digikam/28219572102/in/dateposted-public/ Gilles Caulier
root tag in Tags view from left and right sidebars. https://www.flickr.com/photos/digikam/27714438463/in/dateposted-public/ Gilles Caulier
Created attachment 100118 [details] Updated patch Still the same results?
In an old DB the tag _Digikam_root_tag_ still exists. When a new DB is created, the tag _Digikam_root_tag_ no longer appear. Do we need QRegExp? Is enough no simple QLatin1String? Maik
Maik, i cannot confirm your comment #84. I run digiKam with patch version 100045 with a fresh database (i delete /var/lib/mysql and restart mysqld to be sure. The DB created is clean. I create myself the digiKam DB in Mysql repository using SQL statements from DK config panel. After the first scan, the _root_ tag appear in left and right Tags panels. Gilles
Maik, Do you seen any slow down performance with a fresh DB created, typically at first scan ? Look in the console if registration to DB take time latency (1/2 seconds here). Previously, i never see this with remote Mysql DB (same computer, same configuration) Gilles Caulier
Gilles, I have tested it with patch #100118. Maik
Gilles, No slow DB access with a new internal DB on the first scan here. Maik
(In reply to Maik Qualmann from comment #84) > In an old DB the tag _Digikam_root_tag_ still exists. When a new DB is > created, the tag _Digikam_root_tag_ no longer appear. Do we need QRegExp? Is > enough no simple QLatin1String? I think QRegExp is fine to use here for pattern matching in the strings.
Maik, Currently i test with new version patch. Do you seen that splashscreen is frozen on screen while long first scanning without any progress indicator and without any text message on the top ? https://www.flickr.com/photos/digikam/27722159883/in/dateposted-public/ In fact, while scanning, the Progress dialog must be show in all cases, even if user turn on splashscreen option. In this last case, the splashscreen must be show when scan is completed. It will appear few seconds only, and it's enough. There is already a report open about this topic in bugzilla if i remember. Gilles
Another problem : If images in collection have been previously managed with option to save tags in image metadata, the _root_ tags will be restored in a fresh database. I'm sure that my collection is in this use case. I don't know if metadata hub has already the rules to drop this internal tag while scanning. Gilles
The first scan is complete with the new patch version. It took 20 mn ! The _root_ tag is not restored. So it's not present in my images metadata or Metadata Hub do the job properly. This point still to verify to be sure. So the new patch version look better until now. Now i start the face detection scan to see if _root_ tag is recreated. Gilles
Note : Face Scan is started with "Clear unconfirmed results and rescan" + "Detect faces" options. Gilles
I confirm : new patch is really better as not _root_ tag appear in tree-view after face scan. Good job Swati... Gilles
Now i will scan items to generate fuzzy fingerprints to find duplicates. Gilles
Maik, metadathub.cpp::line 553 and imagescanner.cpp::line 840 has all rules to prevent _root_ tag to be imported to DB. So for your problem "In an old DB the tag _Digikam_root_tag_ still exists", I think a migration rule must be written to clean up the registration of internal tag to items. Swati, what do you think about ? Gilles
The fuzzy FingerPrints process is done. No _root_ tag here... I restarted digiKam just to be sure, no _root_ tag here... Gilles
(In reply to caulier.gilles from comment #94) > I confirm : new patch is really better as not _root_ tag appear in tree-view > after face scan. Good job Swati... Thank you! (In reply to caulier.gilles from comment #96) > Maik, > > metadathub.cpp::line 553 and imagescanner.cpp::line 840 has all rules to > prevent _root_ tag to be imported to DB. > > So for your problem "In an old DB the tag _Digikam_root_tag_ still exists", > I think a migration rule must be written to clean up the registration of > internal tag to items. Could you please elaborate on this?
"In an old DB the tag _Digikam_root_tag_ still exists" It's clear. If this tag still appear in tree-view, certainly it's assigned to item as well (as a normal tag). As Maik can reproduce the problem (not me), he can check this kind of situation in DB. If it's the case, well something must be done to remove these assignation in older database : a migration of contents to prevent _root_ tag visibility in treeview. Gilles
Hello, Le samedi 16 juillet 2016 à 09:28 +0000, via KDE Bugzilla a écrit : > https://bugs.kde.org/show_bug.cgi?id=283323 > > --- Comment #99 from caulier.gilles@gmail.com --- > "In an old DB the tag _Digikam_root_tag_ still exists" > > It's clear. If this tag still appear in tree-view, certainly it's assigned to > item as well (as a normal tag). As Maik can reproduce the problem (not me), he > can check this kind of situation in DB. As I have said in a earlyer response : 1 - clear all embedded metadata from image before "scanning" it with Digikam make disapear extra "_digikam_root_tag" 2 - don't write metadata to image with digikam (only stored in mysql db), prevent digikam to fill mysql db with extra "_digikam_root_tag" 3 - forgive to erase metadata from image before "scanning", should make "_digikam_root_tag" appear again, even if image has no embeded "_digikam_root_tag". I have it working like this (no metadata writed to image, and only stored in mysql) with old digikam 3.5 and mysql on a multi-digikam-client config Greatings, Eric > > If it's the case, well something must be done to remove these assignation in > older database : a migration of contents to prevent _root_ tag visibility in > treeview. > > Gilles >
Git commit eb6318a45efe1e08f35da450633f3bcb1027fd6a by Swati Lodha. Committed on 16/07/2016 at 09:51. Pushed by swatil into branch 'master'. Remove _digikam_root_tag_ from tag tree-view M +3 -1 data/database/dbconfig.xml.cmake.in M +8 -1 libs/database/tags/facetags.cpp M +10 -2 libs/database/tags/tagscache.cpp http://commits.kde.org/digikam/eb6318a45efe1e08f35da450633f3bcb1027fd6a
Maik Could this file be closed now, with the last commit? Thanks!
*** Bug 374988 has been marked as a duplicate of this bug. ***