Bug 194950 - Digikam endlessly spewing text to stderr
Summary: Digikam endlessly spewing text to stderr
Status: RESOLVED FIXED
Alias: None
Product: digikam
Classification: Applications
Component: Database-Scan (show other bugs)
Version: 0.10.0
Platform: unspecified Linux
: NOR normal
Target Milestone: ---
Assignee: Digikam Developers
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2009-06-02 08:12 UTC by Paweł Marciniak
Modified: 2017-07-25 19:13 UTC (History)
4 users (show)

See Also:
Latest Commit:
Version Fixed In: 1.0.0


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Paweł Marciniak 2009-06-02 08:12:31 UTC
Version:           0.10.0 (using KDE 4.2.3)
OS:                Linux
Installed from:    Unlisted Binary Package

The moment I modify the first photo after starting digikam, it starts throwing the following lines into stderr every second or so:

digikam(8503)/digikam (core) Digikam::AlbumManager::slotDirWatchDirty: KDirWatch detected change at "/multimedia/foto/digikam4.db-journal"
digikam(8503)/digikam (core) Digikam::CollectionScanner::scanAlbum: Folder does not exist or is not readable:  "/multimedia/foto/digikam4.db-journal"

I don't know if it's relevant, but I keep my photo collection in a FAT32 filesystem. The only impact of this bug is that after some time of working with digikam, the konsole window history file becomes several dozens MiB in size. The entries just before this starts are as follows:

digikam(1536)/digikam (core) Digikam::DMetadata::setImageComment: "/multimedia/foto/todo/new/2009-05-03/dsc_0419.jpg"  ==> Comment:  ""   
digikam(1536)/digikam (core) Digikam::DMetadata::setImageRating: Rating value to write is out of range!                                   
digikam(1536)/digikam (core) Digikam::AlbumManager::slotDirWatchDirty: KDirWatch detected change at "/multimedia/foto/digikam4.db"        
digikam(1536)/digikam (core) Digikam::AlbumManager::slotDirWatchDirty: KDirWatch detected change at "/multimedia/foto/digikam4.db-journal"
digikam(1536)/digikam (core) Digikam::CollectionScanner::scanAlbum: Folder does not exist or is not readable:  "/multimedia/foto/digikam4.db"                                                                                                                                       

digikam(1536)/digikam (core) Digikam::CollectionScanner::scanAlbum: Folder does not exist or is not readable:  "/multimedia/foto/digikam4.db-journal"
Comment 1 caulier.gilles 2009-06-19 11:59:15 UTC
Pawel,

Sound like a mounting problem with your FAT32 partition.

Gilles Caulier
Comment 2 Daniel Svärd 2009-07-04 00:01:49 UTC
I have the same problem and I am not using FAT32, I am using ReiserFS.

I can edit the photo in the image editor, but when I edit the metadata and apply it, that is when it starts spewing out those messages.

I use Archlinux (kdemod) and Digikam gives me the following in the component information dialog:

digiKam version 0.10.0
Exiv2 can write to Jp2: Yes
Exiv2 can write to Jpeg: Yes
Exiv2 can write to Png: Yes
Exiv2 can write to Tiff: Yes
Exiv2 support XMP metadata: Yes
LibCImg: 130
LibExiv2: 0.18
LibJPEG: 62
LibJasper: 1.900.1
LibKDE: 4.2.4 (KDE 4.2.4)
LibKExiv2: 0.5.0
LibKdcraw: 0.4.2
LibLCMS: 117
LibPNG: 1.2.35
LibQt: 4.5.1
LibRaw: 0.6.15-Release
LibTIFF: LIBTIFF, Version 3.8.2 Copyright (c) 1988-1996 Sam Leffler Copyright (c) 1991-1996 Silicon Graphics, Inc.
LibGphoto2: 2.4.6
LibKipi: 0.3.0

I don't know if it was smart or not, but I tried creating the directory digikam4.db-journal in my collection directroy. It stopped the messages, but it also stopped displaying all of my albums and images in Digikam's main view with the following console output:

digikam(29381)/digikam (core) Digikam::AlbumManager::slotDirWatchDirty: KDirWatch detected change at "/home/atod/Pictures/digikam4.db-journal"
digikam(29381)/digikam (core) Digikam::DatabaseBackend::exec: Failure executing query:
digikam(29381)/digikam (core) Digikam::DatabaseBackend::exec: "SELECT value FROM Settings WHERE keyword=?;"
digikam(29381)/digikam (core) Digikam::DatabaseBackend::exec: "disk I/O error Unable to fetch row" 10
digikam(29381)/digikam (core) Digikam::DatabaseBackend::exec: Bound values:  (QVariant(QString, "databaseImageFormats") )
digikam(29381)/digikam (core) Digikam::DatabaseBackend::exec: Failure executing query:
digikam(29381)/digikam (core) Digikam::DatabaseBackend::exec: "SELECT value FROM Settings WHERE keyword=?;"
digikam(29381)/digikam (core) Digikam::DatabaseBackend::exec: "disk I/O error Unable to fetch row" 10
digikam(29381)/digikam (core) Digikam::DatabaseBackend::exec: Bound values:  (QVariant(QString, "databaseUserImageFormats") )
digikam(29381)/digikam (core) Digikam::DatabaseBackend::exec: Failure executing query:
digikam(29381)/digikam (core) Digikam::DatabaseBackend::exec: "SELECT value FROM Settings WHERE keyword=?;"
digikam(29381)/digikam (core) Digikam::DatabaseBackend::exec: "disk I/O error Unable to fetch row" 10
digikam(29381)/digikam (core) Digikam::DatabaseBackend::exec: Bound values:  (QVariant(QString, "databaseVideoFormats") )
digikam(29381)/digikam (core) Digikam::DatabaseBackend::exec: Failure executing query:
digikam(29381)/digikam (core) Digikam::DatabaseBackend::exec: "SELECT value FROM Settings WHERE keyword=?;"
digikam(29381)/digikam (core) Digikam::DatabaseBackend::exec: "disk I/O error Unable to fetch row" 10
digikam(29381)/digikam (core) Digikam::DatabaseBackend::exec: Bound values:  (QVariant(QString, "databaseUserVideoFormats") )
digikam(29381)/digikam (core) Digikam::DatabaseBackend::exec: Failure executing query:
digikam(29381)/digikam (core) Digikam::DatabaseBackend::exec: "SELECT value FROM Settings WHERE keyword=?;"
digikam(29381)/digikam (core) Digikam::DatabaseBackend::exec: "disk I/O error Unable to fetch row" 10
digikam(29381)/digikam (core) Digikam::DatabaseBackend::exec: Bound values:  (QVariant(QString, "databaseAudioFormats") )
digikam(29381)/digikam (core) Digikam::DatabaseBackend::exec: Failure executing query:
digikam(29381)/digikam (core) Digikam::DatabaseBackend::exec: "SELECT value FROM Settings WHERE keyword=?;"
digikam(29381)/digikam (core) Digikam::DatabaseBackend::exec: "disk I/O error Unable to fetch row" 10
digikam(29381)/digikam (core) Digikam::DatabaseBackend::exec: Bound values:  (QVariant(QString, "databaseUserAudioFormats") )
digikam(29381)/digikam (core) Digikam::DatabaseBackend::exec: Failure executing query:
digikam(29381)/digikam (core) Digikam::DatabaseBackend::exec: "DELETE FROM Albums WHERE albumRoot=0;"
digikam(29381)/digikam (core) Digikam::DatabaseBackend::exec: "disk I/O error Unable to fetch row" 10
digikam(29381)/digikam (core) Digikam::DatabaseBackend::exec: Bound values:  ()
digikam(29381)/digikam (core) Digikam::DatabaseBackend::exec: Failure executing query:
digikam(29381)/digikam (core) Digikam::DatabaseBackend::exec: "SELECT Albums.id, Albums.relativePath, Albums.albumRoot from Albums; "
digikam(29381)/digikam (core) Digikam::DatabaseBackend::exec: "disk I/O error Unable to fetch row" 10
digikam(29381)/digikam (core) Digikam::DatabaseBackend::exec: Bound values:  ()
digikam(29381)/digikam (core) Digikam::DatabaseBackend::exec: Failure executing query:
digikam(29381)/digikam (core) Digikam::DatabaseBackend::exec: "SELECT id FROM Albums WHERE albumRoot=? AND relativePath=?;"
digikam(29381)/digikam (core) Digikam::DatabaseBackend::exec: "disk I/O error Unable to fetch row" 10
digikam(29381)/digikam (core) Digikam::DatabaseBackend::exec: Bound values:  (QVariant(int, 1) ,  QVariant(QString, "/digikam4.db-journal") )
digikam(29381)/digikam (core) Digikam::DatabaseBackend::exec: Failure executing query:
digikam(29381)/digikam (core) Digikam::DatabaseBackend::exec: "REPLACE INTO Albums (albumRoot, relativePath, date, caption, collection) VALUES(?, ?, ?, ?, ?);"
digikam(29381)/digikam (core) Digikam::DatabaseBackend::exec: "disk I/O error Unable to fetch row" 10
digikam(29381)/digikam (core) Digikam::DatabaseBackend::exec: Bound values:  (QVariant(int, 1) ,  QVariant(QString, "/digikam4.db-journal") ,  QVariant(QString, "2009-07-03") ,  QVariant(QString, "") ,  QVariant(QString, "") )
digikam(29381)/digikam (core) Digikam::DatabaseBackend::exec: Failure executing query:
digikam(29381)/digikam (core) Digikam::DatabaseBackend::exec: "SELECT id, album, name, status, category, modificationDate, uniqueHash FROM Images WHERE album=?;"
digikam(29381)/digikam (core) Digikam::DatabaseBackend::exec: "disk I/O error Unable to fetch row" 10
digikam(29381)/digikam (core) Digikam::DatabaseBackend::exec: Bound values:  (QVariant(int, 0) )
digikam(29381)/digikam (core) Digikam::DatabaseBackend::exec: Failure executing query:
digikam(29381)/digikam (core) Digikam::DatabaseBackend::exec: "SELECT A.albumRoot, A.id, A.relativePath, A.date, A.caption, A.collection, B.albumRoot, B.relativePath, I.name 
 FROM Albums AS A 
   LEFT OUTER JOIN Images AS I ON A.icon=I.id 
  LEFT OUTER JOIN Albums AS B ON B.id=I.album 
 WHERE A.albumRoot != 0;"
digikam(29381)/digikam (core) Digikam::DatabaseBackend::exec: "disk I/O error Unable to fetch row" 10
digikam(29381)/digikam (core) Digikam::DatabaseBackend::exec: Bound values:  ()
digikam(29381)/kio (Slave) KIO::Slave::createSlave: createSlave "digikamalbums" for KUrl("digikamalbums:?databaseType=QSQLITE&databaseName=/home/atod/Pictures/digikam4.db")
digikam(29381)/kio (KIOConnection) KIO::ConnectionServer::listenForRemote: Listening on  "local:/tmp/ksocket-atod/digikamP29381.slave-socket"

Exiting Digikam, removing the directory and starting Digikam again brought everything back though.
Comment 3 Marcel Wiesweg 2009-07-04 11:46:30 UTC
This happens to you since a change from KDE 4.2.2 to 4.2.3 changed drastically the behavior of KDirWatch. One can argue that the behavior improved, nevertheless it changed between bugfix releases which it shouldnt.

The problem is fixed in current trunk.

@2: No it was not smart to create this directory ;-) It's the name of sqlite's journal file.
Comment 4 Paweł Marciniak 2009-08-29 20:53:24 UTC
I confirm that this looks like fixed now. Thanks guys!