Summary: | Crash in libtiff when files are edited | ||
---|---|---|---|
Product: | [Applications] digikam | Reporter: | philippe.quaglia |
Component: | Plugin-DImg-TIFF | Assignee: | Digikam Developers <digikam-bugs-null> |
Status: | RESOLVED FIXED | ||
Severity: | crash | CC: | axel.krebs, caulier.gilles, fredericg_99, jon33040, marcel.wiesweg |
Priority: | NOR | ||
Version: | 2.6.0 | ||
Target Milestone: | --- | ||
Platform: | Ubuntu | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: | 2.7.0 | |
Sentry Crash Report: |
Description
philippe.quaglia
2011-08-15 18:39:47 UTC
I have encountered this bug many time again, even when rating the thumbnails in line above the main window. Also, It appears that the name of the picture I was rating has been changed by digikam ! In that case, the file "Numb01_01.tif" has been renamed "Numb01_01.tif15671". The extension has been changed, and digikam does not catalog it. Very strange ! Crash appear in libtiff, in digiKam tiff loader. which libtiff version you use ? Go to Help/Components Info for details. Gilles Caulier Hello Gilles, here is a copy of the componant info window: digiKam version 2.0.0 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.21.1 LibJPEG: 62 LibJasper: 1.900.1 LibKDE: 4.6.2 (4.6.2) LibKExiv2: 2.0.0 LibKGeoMap: 2.0.0 LibKdcraw: 2.0.0 LibLCMS: 118 LibPGF: 6.11.24 - bibliothèque interne LibPNG: 1.2.44 LibQt: 4.7.2 LibRaw: 0.13.7 LibTIFF: LIBTIFF, Version 3.9.4 Copyright (c) 1988-1996 Sam Leffler Copyright (c) 1991-1996 Silicon Graphics, Inc. Marble Widget: 0.11.2 (Stable Release) LibGphoto2: 2.4.11 LibKface: 2.0.0 LibKipi: 1.2.0 LibOpenCV: 2.3.0 Libface: 0.2 Moteur de base de données: QSQLITE Best regards. Le 23/08/2011 10:24, Gilles Caulier a écrit : > https://bugs.kde.org/show_bug.cgi?id=280142 > > > Gilles Caulier<caulier.gilles@gmail.com> changed: > > What |Removed |Added > ---------------------------------------------------------------------------- > CC| |caulier.gilles@gmail.com > > > > > --- Comment #2 from Gilles Caulier<caulier gilles gmail com> 2011-08-23 08:24:04 --- > Crash appear in libtiff, in digiKam tiff loader. which libtiff version you use > ? Go to Help/Components Info for details. > > Gilles Caulier > Is the bug only reproducible with TIFF images? Can you reproduce it with multiple images, or is there a specific one? Have you enabled writing tags to image metadata? Does it still crash if you disable? Do you get the same backtrace if you run digikam under gdb: gdb digikam run <provoke crash> bt ? Hello Marcel, sorry for the delay for answering, I did not had time to make some tests. I will do some in the next days. However, I can tell that the crash is reproducible with many different pictures, but I only have tested with .Tiff pictures. It is clearly not linked with one specific picture. I do have enabled writing tags to image metadata. I will do some tests to answer your other questions. Best regards. Le 26/08/2011 18:34, Marcel Wiesweg a écrit : > https://bugs.kde.org/show_bug.cgi?id=280142 > > > > > > --- Comment #4 from Marcel Wiesweg<marcel wiesweg gmx de> 2011-08-26 16:34:25 --- > Is the bug only reproducible with TIFF images? Can you reproduce it with > multiple images, or is there a specific one? Have you enabled writing tags to > image metadata? Does it still crash if you disable? > > Do you get the same backtrace if you run digikam under gdb: > gdb digikam > run > <provoke crash> > bt > ? > Hello Marcel, I did some more tests this morning. Apparently, the bug does not occur anymore if I disable the tag writing in image metadata. I did experience it with many different images. As I already reported, it sometimes have change my picture file (at least rename it). It look like that it happen also with .jpg. Hope this helps. Best regards, and thanks for the latest release. Le 26/08/2011 18:34, Marcel Wiesweg a écrit : > https://bugs.kde.org/show_bug.cgi?id=280142 > > > > > > --- Comment #4 from Marcel Wiesweg<marcel wiesweg gmx de> 2011-08-26 16:34:25 --- > Is the bug only reproducible with TIFF images? Can you reproduce it with > multiple images, or is there a specific one? Have you enabled writing tags to > image metadata? Does it still crash if you disable? > > Do you get the same backtrace if you run digikam under gdb: > gdb digikam > run > <provoke crash> > bt > ? > As i can see in backtrace, it's fully relevant of Exiv2 library. This is why crash disapear when you disable this option. Can you reproduce the crash when you try to change something in image metadata using Exiv2 command line tool ? Gilles Caulier In thread 11, we have the ImageScanner scanning a new file. Not a changed or moved file, but one that was never seen before. More information could be gathered from console output. In thread 2, we have the thumbnail thread create a thumbnail from a file, probably in the currently opened album. We cannot know if the file was changed or new. The crash occurs deep inside libtiff. The x.org crash handler has already been called in thread 1, so some time after the crash has passed. Crashing digikam under gdb may give a more reliable bt (or confirm this unusual one) Philippe: See http://www.digikam.org/drupal/contrib how to create a backtrace with digikam running under gdb I get a crash this evening, using gdb. Here is the backtrace. I hope this helps: (gdb) bt #0 0x04329326 in ?? () from /usr/lib/i386-linux-gnu/libtiff.so.4 #1 0x04333fa1 in ?? () from /usr/lib/i386-linux-gnu/libtiff.so.4 #2 0x04337ec6 in TIFFReadEncodedStrip () from /usr/lib/i386-linux-gnu/libtiff.so.4 #3 0x0431fb1d in ?? () from /usr/lib/i386-linux-gnu/libtiff.so.4 #4 0x04321b92 in TIFFRGBAImageGet () from /usr/lib/i386-linux-gnu/libtiff.so.4 #5 0x00f5994b in Digikam::TIFFLoader::load (this=0xa62fd620, filePath=..., observer=0xa131830) at /build/buildd/digikam2-2.1.1/core/libs/dimg/loaders/tiffloader.cpp:605 #6 0x00f31c7c in Digikam::DImg::load (this=0xa131998, filePath=..., loadFlagsInt=63, observer=0xa131830, rawDecodingSettings=...) at /build/buildd/digikam2-2.1.1/core/libs/dimg/dimg.cpp:443 #7 0x00f33263 in Digikam::DImg::load (this=0xa131998, filePath=..., observer=0xa131830, rawDecodingSettings=...) at /build/buildd/digikam2-2.1.1/core/libs/dimg/dimg.cpp:372 #8 0x01103d12 in Digikam::PreviewLoadingTask::execute (this=0xa131828) at /build/buildd/digikam2-2.1.1/core/libs/threadimageio/previewtask.cpp:294 #9 0x010ed220 in Digikam::LoadSaveThread::run (this=0x8c0c710) at /build/buildd/digikam2-2.1.1/core/libs/threadimageio/loadsavethread.cpp:118 #10 0x01134020 in Digikam::DynamicThread::DynamicThreadPriv::run ( ---Type <return> to continue, or q <return> to quit--- this=0x8c0c7a8) at /build/buildd/digikam2-2.1.1/core/libs/threads/dynamicthread.cpp:328 #11 0x02d5b866 in QThreadPoolThread::run (this=0x96a31a0) at concurrent/qthreadpool.cpp:106 #12 0x02d67da2 in QThreadPrivate::start (arg=0x96a31a0) at thread/qthread_unix.cpp:320 #13 0x03391e99 in start_thread () from /lib/i386-linux-gnu/libpthread.so.0 #14 0x032fb73e in clone () from /lib/i386-linux-gnu/libc.so.6 Le 25/09/2011 15:55, Marcel Wiesweg a écrit : > https://bugs.kde.org/show_bug.cgi?id=280142 > > > > > > --- Comment #9 from Marcel Wiesweg<marcel wiesweg gmx de> 2011-09-25 13:55:13 --- > Philippe: See http://www.digikam.org/drupal/contrib how to create a backtrace > with digikam running under gdb > The trace confirms that the crash occurs in libtiff (this time, not a 16bit image as above but an 8bit image, so the traces are slightly different). Apparently, the metadata was written to the image, changing the timestamp and causing a thumbnail recreation. All fine so far. I assume loading these images normally (in preview or editor) is no problem, so the situation of concurrent exiv2 write access and libtiff reading, or some other involved memory corruption, is necessary to trigger the problem. I would recommend to try with current git (or wait for 2.3) and, if still reproducible, try to reproduce with digikam running under valgrind to rule out memory corruption. Hello. bug is still there in release 2.3.0. Happens always if I make two or more fast clicks. Moreover. the image file is duplicated with a modified name (a numerical extension is added) and the original file is empty: for example, I now have one file: "Vanoise1999.tif" of 0 octets and one file "Vanoise1999.tif12155" of 76,7 Mo. Here is the corresponding backtrace: philippe@philippe-P5E:~$ gdb digikam GNU gdb (Ubuntu/Linaro 7.3-0ubuntu2) 7.3-2011.08 Copyright (C) 2011 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html> This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Type "show copying" and "show warranty" for details. This GDB was configured as "i686-linux-gnu". For bug reporting instructions, please see: <http://bugs.launchpad.net/gdb-linaro/>... Reading symbols from /usr/bin/digikam...Reading symbols from /usr/lib/debug/usr/bin/digikam...done. done. (gdb) run Starting program: /usr/bin/digikam [Thread debugging using libthread_db enabled] (digikam:12155): Gtk-WARNING **: Impossible de trouver le moteur de thème dans module_path : « pixmap » (digikam:12155): Gtk-WARNING **: Impossible de trouver le moteur de thème dans module_path : « pixmap » (digikam:12155): Gtk-WARNING **: Impossible de trouver le moteur de thème dans module_path : « pixmap » (digikam:12155): Gtk-WARNING **: Impossible de trouver le moteur de thème dans module_path : « pixmap » [New Thread 0xaf338b70 (LWP 12258)] [New Thread 0xae9ffb70 (LWP 12259)] [New Thread 0xad5f4b70 (LWP 12260)] [New Thread 0xacdf3b70 (LWP 12261)] [New Thread 0xac5f2b70 (LWP 12262)] QSqlDatabasePrivate::removeDatabase: connection 'ConnectionTest' is still in use, all queries will cease to work. [Thread 0xac5f2b70 (LWP 12262) exited] [New Thread 0xac5f2b70 (LWP 12283)] [New Thread 0xa4d84b70 (LWP 12284)] [Thread 0xa4d84b70 (LWP 12284) exited] [New Thread 0xa4d84b70 (LWP 12285)] [New Thread 0xa04f0b70 (LWP 12286)] [Thread 0xa4d84b70 (LWP 12285) exited] [Thread 0xa04f0b70 (LWP 12286) exited] digikam(12155)/digikam (core) Digikam::ImageInfoJob::slotResult: Failed to list url: "" digikam(12155)/digikam (core) Digikam::ImageInfoJob::slotResult: Failed to list url: "" [New Thread 0xa04f0b70 (LWP 12302)] [Thread 0xaf338b70 (LWP 12258) exited] [New Thread 0xaf338b70 (LWP 12366)] void DBusMenuExporterPrivate::fillLayoutItem(DBusMenuLayoutItem*, QMenu*, int, int, const QStringList&): No id for action void DBusMenuExporterPrivate::fillLayoutItem(DBusMenuLayoutItem*, QMenu*, int, int, const QStringList&): No id for action void DBusMenuExporterPrivate::fillLayoutItem(DBusMenuLayoutItem*, QMenu*, int, int, const QStringList&): No id for action void DBusMenuExporterPrivate::fillLayoutItem(DBusMenuLayoutItem*, QMenu*, int, int, const QStringList&): No id for action void DBusMenuExporterPrivate::fillLayoutItem(DBusMenuLayoutItem*, QMenu*, int, int, const QStringList&): No id for action void DBusMenuExporterPrivate::fillLayoutItem(DBusMenuLayoutItem*, QMenu*, int, int, const QStringList&): No id for action void DBusMenuExporterPrivate::fillLayoutItem(DBusMenuLayoutItem*, QMenu*, int, int, const QStringList&): No id for action void DBusMenuExporterPrivate::fillLayoutItem(DBusMenuLayoutItem*, QMenu*, int, int, const QStringList&): No id for action void DBusMenuExporterPrivate::fillLayoutItem(DBusMenuLayoutItem*, QMenu*, int, int, const QStringList&): No id for action void DBusMenuExporterPrivate::fillLayoutItem(DBusMenuLayoutItem*, QMenu*, int, int, const QStringList&): No id for action void DBusMenuExporterPrivate::fillLayoutItem(DBusMenuLayoutItem*, QMenu*, int, int, const QStringList&): No id for action void DBusMenuExporterPrivate::fillLayoutItem(DBusMenuLayoutItem*, QMenu*, int, int, const QStringList&): No id for action [New Thread 0xa4d84b70 (LWP 12367)] [New Thread 0xa2e9fb70 (LWP 12368)] [New Thread 0xa269eb70 (LWP 12369)] [New Thread 0x8cc14b70 (LWP 12370)] [New Thread 0xa1cffb70 (LWP 12383)] [New Thread 0xa12ffb70 (LWP 12384)] digikam(12155)/digikam (core) Digikam::CollectionScanner::scanAlbum: Folder does not exist or is not readable: "/home/philippe/Images/PelliculeMarielleVanoise1996/Vanoise1999.tif12155" digikam(12155)/digikam (core) Digikam::CollectionScanner::scanAlbum: Folder does not exist or is not readable: "/home/philippe/Images/PelliculeMarielleVanoise1996/Vanoise1999.tif" Program received signal SIGBUS, Bus error. [Switching to Thread 0xa4d84b70 (LWP 12367)] 0xb3fa1aa0 in ?? () from /usr/lib/i386-linux-gnu/libtiff.so.4 Your last trace is not suitable. To get a better backtrace, please run digiKam through GDB like this : http://www.digikam.org/drupal/contrib Gilles Cauier New bt follwing Gille's instructions: Program received signal SIGBUS, Bus error. [Switching to Thread 0xa09ffb70 (LWP 19132)] 0xb3fa1aa0 in ?? () from /usr/lib/i386-linux-gnu/libtiff.so.4 (gdb) bt #0 0xb3fa1aa0 in ?? () from /usr/lib/i386-linux-gnu/libtiff.so.4 #1 0xb3fad3f0 in ?? () from /usr/lib/i386-linux-gnu/libtiff.so.4 #2 0xb3fb1411 in TIFFReadEncodedStrip () from /usr/lib/i386-linux-gnu/libtiff.so.4 #3 0xb3f98053 in ?? () from /usr/lib/i386-linux-gnu/libtiff.so.4 #4 0xb3f9a295 in TIFFRGBAImageGet () from /usr/lib/i386-linux-gnu/libtiff.so.4 #5 0xb7135be1 in Digikam::TIFFLoader::load (this=0xa09fe7a0, filePath=..., observer=0xa0dc1a8) at /build/buildd/digikam-2.3.0/core/libs/dimg/loaders/tiffloader.cpp:605 #6 0xb710cf28 in Digikam::DImg::load (this=0xa09fec24, filePath=..., loadFlagsInt=13, observer=0xa0dc1a8, rawDecodingSettings=...) at /build/buildd/digikam-2.3.0/core/libs/dimg/dimg.cpp:444 #7 0xb710dece in Digikam::DImg::load (this=0xa09fec24, filePath=..., loadMetadata=false, loadICCData=true, loadUniqueHash=false, loadImageHistory=false, observer=0xa0dc1a8, rawDecodingSettings=...) at /build/buildd/digikam-2.3.0/core/libs/dimg/dimg.cpp:401 #8 0xb7308edd in Digikam::ThumbnailCreator::loadWithDImg (this=0x8b7e368, path=..., profile=0xa09fed10) at /build/buildd/digikam-2.3.0/core/libs/threadimageio/thumbnailcreator.cpp:558 #9 0xb7309b89 in Digikam::ThumbnailCreator::createThumbnail (this=0x8b7e368, info=..., detailRect=..., isFace=false) at /build/buildd/digikam-2.3.0/core/libs/threadimageio/thumbnailcreator.cpp:---Type <return> to continue, or q <return> to quit--- 487 #10 0xb730a273 in Digikam::ThumbnailCreator::load (this=0x8b7e368, path=..., rect=..., pregenerate=false) at /build/buildd/digikam-2.3.0/core/libs/threadimageio/thumbnailcreator.cpp:257 #11 0xb730b272 in Digikam::ThumbnailCreator::load (this=0x8b7e368, path=...) at /build/buildd/digikam-2.3.0/core/libs/threadimageio/thumbnailcreator.cpp:196 #12 0xb731b6c9 in Digikam::ThumbnailLoadingTask::execute (this=0xa0dc1a0) at /build/buildd/digikam-2.3.0/core/libs/threadimageio/thumbnailtask.cpp:169 #13 0xb72e7048 in Digikam::LoadSaveThread::run (this=0x8aad488) at /build/buildd/digikam-2.3.0/core/libs/threadimageio/loadsavethread.cpp:118 #14 0xb7332c1e in Digikam::DynamicThread::DynamicThreadPriv::run ( this=0x8aad950) at /build/buildd/digikam-2.3.0/core/libs/threads/dynamicthread.cpp:328 #15 0xb53cf651 in QThreadPoolThread::run (this=0xaea6b688) at concurrent/qthreadpool.cpp:106 #16 0xb53db7b3 in QThreadPrivate::start (arg=0xaea6b688) at thread/qthread_unix.cpp:331 #17 0xb3f1cd31 in start_thread () from /lib/i386-linux-gnu/libpthread.so.0 #18 0xb51180ce in clone () from /lib/i386-linux-gnu/libc.so.6 ---Type <return> to continue, or q <return> to quit--- Backtrace stopped: Not enough registers or memory available to unwind further (gdb) Philippe, Crash occurs when TIFF thumbnail image is generated. libtiff crash in fact. To continue investiguations, we need a tiff image sample to reproduce the crash here. Try to find the relevant image which make the crash, and give us an url to donload it through internet Gilles Caulier Hello, it happens with most of the big .Tiff files produced by my scanner. I have shared the image used in the last backtrace: http://ubuntuone.com/0h8bB9yyia5H7YBeCrMRPF Philippe, No problem here with your image : 1/ no crash at startup when image is imported to DB 2/ no crash when thumb is generated 3/ no crash to load image in preview mode 4/ no crash when image is loaded in editor 5/ no crash when i assign/unassign star http://www.flickr.com/photos/digikam/6398986193/sizes/o/in/photostream/ Gilles Caulier As confirmed by Gilles, the crash occurs systematically if the rating is changed rapidly, i.e. two or 3 clicks in few seconds. *** Bug 295020 has been marked as a duplicate of this bug. *** The read/write locking implemented for 2.6 may offer new aspects here as well *** Bug 298547 has been marked as a duplicate of this bug. *** *** Bug 301122 has been marked as a duplicate of this bug. *** Official digiKam 2.6.0 release is out since few days now : http://www.digikam.org/drupal/node/656 Please, check if this entry still valid, or update report accordingly. Thanks in advance. Gilles Caulier Hello, I have perform some tests with release 2.6.0, and I have not been able to reproduce the bug. Good news, thanks for this release. Am 26.06.2012 20:20, schrieb philippe.quaglia@laposte.net: > https://bugs.kde.org/show_bug.cgi?id=280142 > > philippe.quaglia@laposte.net changed: > > What |Removed |Added > ---------------------------------------------------------------------------- > Version|2.3.0 |2.6.0 > > --- Comment #24 from philippe.quaglia@laposte.net --- > Hello, > I have perform some tests with release 2.6.0, and I have not been able to > reproduce the bug. Good news, thanks for this release. > I am happy, if "some tests" fit precisely the original bug. Good! Axel Am 21.04.2012 17:26, schrieb Marcel Wiesweg:
> https://bugs.kde.org/show_bug.cgi?id=280142
>
> Marcel Wiesweg <marcel.wiesweg@gmx.de> changed:
>
> What |Removed |Added
> ----------------------------------------------------------------------------
> CC| |axel.krebs@t-online.de
>
> --- Comment #21 from Marcel Wiesweg <marcel.wiesweg@gmx.de> ---
> *** Bug 298547 has been marked as a duplicate of this bug. ***
>
Any news convcerning the externally modified tiff producing digiKam
crashes??
Axel
|