[Pkg-kde-extras] Bug#756512: digikam: images not displayed in album

Vincent Danjean vdanjean at debian.org
Wed Jul 30 13:32:40 UTC 2014


Package: digikam
Version: 4:4.1.0-1
Severity: important

  Hi,

  I'm using digikam for several years to handle all my photos. Regularly,
some images are present in repository on disk, they are counted into the album
list (for example, I see '8 (221)' that tells me there is 221 images in the
album/directory named '8', and it is indeed what there is on filesystem).
However, they are not displayed in the central part of digikam.
  I looked for lots of thing on Internet about this bug. I read and test
lots of things.
  Eventually, I found the java program DigikamDBValidator. I know it is not
maintain anymore and it is not necessarly fully working with recent version of
digikam, but it allows me to start to look into the digikam database.

  And I found several problems.

  And theses problems come back (with other images) after I first corrected
them. So the bug was present into the 4.0.0 digikam version. Upgrading to the
4.1.0 does not fix the database problems (but I do not know (yet) if 4.1.0 will
corrupt the database again)

  For information, I'm using a mysql database for a long time (nearly when it
has been available in the Debian package)


  First, I found several image related tables that refer to non existing
images. For example, I get several rows with the following request :
SELECT ImageComments.id FROM ImageComments LEFT OUTER JOIN Images ON Images.id=ImageComments.imageid WHERE Images.name IS NULL
  I correct them with :
DELETE i FROM ImageComments i LEFT OUTER JOIN Images ON Images.id=i.imageid WHERE Images.name IS NULL;

  And I had this problem in ImageComments, ImageCopyright, ImageInformation,
ImageMetadata, and ImageTags tables (I not sure I cheked all required tables,
there can be more).


  That said, fixing this does not fix my problem with images not displayed.
I found these image with this request :
SELECT id FROM Images WHERE Images.id NOT IN (SELECT ImageInformation.imageid FROM ImageInformation);
  This are images into the 'Images' table but not into the 'ImageInformation'
table.
  I get the path to these images with the following request :
SELECT Images.id, concat(albumRoot, ":", relativePath, "/" , Images.name) FROM Images JOIN Albums on Images.album=Albums.id WHERE Images.id NOT IN (SELECT ImageInformation.imageid FROM ImageInformation);

  And indeed, the listed images where the ones counted into the album list but
not displayed by digikam.

  I fix this by creating empty lines in the ImageInformation table (but this image ID):
insert into ImageInformation (imageid) SELECT id FROM Images WHERE Images.id NOT IN (SELECT ImageInformation.imageid FROM ImageInformation);

  Starting digikam just after this 'fix' makes all my missing images displayed!
Looking at the database, I needed to execute 'read metadata from images again'
in the album menu (I'm not sure of the exact english text: my digikam is in
french) in the album where I had missing images in order to got the
ImageInformation fully filled.
  Needless to say that executing this entry menu before creating the lines in
the ImageInformation table did not have any effect. It is something I tried
lots of times.

  So, I'm not sure what leads to this database corruption but it is something I
observe several times. And it happens with the 4.x series (ie, I'm sure I fixed
the database while I was already using digikam 4.x and today I needed to fix it
again).

  If a developer is interested, I can provide him a copy of my broken database
(4,5 MB compressed with xz)

  Regards,
    Vincent


-- System Information:
Debian Release: jessie/sid
  APT prefers stable-updates
  APT policy: (500, 'stable-updates'), (500, 'unstable'), (500, 'testing'), (500, 'stable'), (500, 'oldstable'), (1, 'experimental')
Architecture: amd64 (x86_64)
Foreign Architectures: i386
armel
mipsel

Kernel: Linux 3.14-1-amd64 (SMP w/8 CPU cores)
Locale: LANG=fr_FR.utf8, LC_CTYPE=fr_FR.utf8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash

Versions of packages digikam depends on:
ii  digikam-data          4:4.1.0-1
ii  digikam-private-libs  4:4.1.0-1
ii  kde-runtime           4:4.11.5-1
ii  libc6                 2.19-4
ii  libgcc1               1:4.9.0-7
ii  libgphoto2-6          2.5.4-1
ii  libgphoto2-port10     2.5.4-1
ii  libkdcraw23           4:4.13.1-1
ii  libkdecore5           4:4.13.1-1
ii  libkdeui5             4:4.13.1-1
ii  libkexiv2-11          4:4.13.1-1
ii  libkhtml5             4:4.13.1-1
ii  libkio5               4:4.13.1-1
ii  libkipi11             4:4.13.1-1
ii  libknotifyconfig4     4:4.13.1-1
ii  libkparts4            4:4.13.1-1
ii  libnepomukcore4       4:4.12.4-1+b1
ii  libopencv-core2.4     2.4.8+dfsg1-2.2
ii  libopencv-imgproc2.4  2.4.8+dfsg1-2.2
ii  libphonon4            4:4.7.1-1
ii  libqt4-dbus           4:4.8.6+dfsg-2
ii  libqt4-sql            4:4.8.6+dfsg-2
ii  libqt4-sql-sqlite     4:4.8.6+dfsg-2
ii  libqt4-xml            4:4.8.6+dfsg-2
ii  libqtcore4            4:4.8.6+dfsg-2
ii  libqtgui4             4:4.8.6+dfsg-2
ii  libsolid4             4:4.13.1-1
ii  libsoprano4           2.9.4+dfsg-1
ii  libstdc++6            4.9.0-7
ii  libthreadweaver4      4:4.13.1-1
ii  perl                  5.18.2-4
ii  phonon                4:4.7.1-1

Versions of packages digikam recommends:
ii  chromium [www-browser]          35.0.1916.153-2
ii  epiphany-browser [www-browser]  3.8.2-5
ii  iceweasel [www-browser]         30.0-2
ii  kipi-plugins                    4:4.1.0-1
ii  konqueror [www-browser]         4:4.12.4-1
ii  mplayerthumbs                   4:4.13.1-1
ii  w3m [www-browser]               0.5.3-16

Versions of packages digikam suggests:
pn  digikam-doc     <none>
ii  systemsettings  4:4.11.9-1

-- no debconf information



More information about the pkg-kde-extras mailing list