I have started a maintenance process using the following options: - search new elements - clean all databases - reconstruct thumbnails (fast option) - reconstruct fingerprints (fast option) - detect and recognize faces (re analyze and merge results) - sync database and metadatas (from database) And these on a large collection of pictures (~65.000) I have launched during the night so I am not able to know when the segmentation fault occured. Below, the last output from the console: Digikam::DImg::load: "/home/mathieu/Images/Photos/0000-00-00 - Photos - Famille/foo/2009-12-29_205823 - DSC05919 (001).JPG" : JPEG file identified Digikam::DMetadata::getImageHistory: Loading image history "" Digikam::MetaEngine::getImageDateTime: DateTime => Exif.Photo.DateTimeOriginal => QDateTime(2009-12-29 20:58:23.000 CET Qt::TimeSpec(LocalTime)) Digikam::MetaEngine::getImageDateTime: DateTime => Exif.Photo.DateTimeDigitized => QDateTime(2009-12-29 20:58:23.000 CET Qt::TimeSpec(LocalTime)) Digikam::OpenCVFaceDetector::cascadeResult: detectMultiScale gave (QRect(722,429 53x53), QRect(131,206 97x97)) Digikam::OpenCVFaceDetector::verifyFace: Verifying face QRect(722,429 53x53) using cascade 0 Digikam::OpenCVFaceDetector::cascadeResult: detectMultiScale: image size 118 133 searchIncrement 1.1 grouping 3 flags 0 min size 32 32 Digikam::OpenCVFaceDetector::cascadeResult: detectMultiScale gave (QRect(40,40 55x55)) Digikam::OpenCVFaceDetector::verifyFace: Verifying face QRect(722,429 53x53) using cascade 1 Digikam::OpenCVFaceDetector::cascadeResult: detectMultiScale: image size 118 133 searchIncrement 1.1 grouping 3 flags 0 min size 32 32 Digikam::OpenCVFaceDetector::cascadeResult: detectMultiScale gave (QRect(40,37 57x57)) Digikam::OpenCVFaceDetector::verifyFace: Verifying face QRect(722,429 53x53) using cascade 2 Digikam::OpenCVFaceDetector::verifyFace: Verifying face QRect(722,429 53x53) using cascade 3 Digikam::OpenCVFaceDetector::cascadeResult: detectMultiScale: image size 118 133 searchIncrement 1.1 grouping 3 flags 0 min size 32 32 Digikam::OpenCVFaceDetector::cascadeResult: detectMultiScale gave () Digikam::OpenCVFaceDetector::verifyFace: Verifying face QRect(722,429 53x53) using cascade 4 Digikam::OpenCVFaceDetector::cascadeResult: detectMultiScale: image size 118 133 searchIncrement 1.1 grouping 3 flags 0 min size 32 32 Digikam::OpenCVFaceDetector::cascadeResult: detectMultiScale gave () Digikam::OpenCVFaceDetector::verifyFace: Verifying face QRect(722,429 53x53) using cascade 5 Digikam::OpenCVFaceDetector::verifyFace: feature QRectF(0,0 0.6x0.6) QRect(722,429 53x53) QRect(722,429 32x32) Digikam::OpenCVFaceDetector::cascadeResult: detectMultiScale: image size 32 32 searchIncrement 1.1 grouping 2 flags 0 min size 5 5 Digikam::OpenCVFaceDetector::cascadeResult: detectMultiScale gave () Digikam::OpenCVFaceDetector::verifyFace: Verifying face QRect(722,429 53x53) using cascade 6 Digikam::OpenCVFaceDetector::verifyFace: feature QRectF(0.4,0 0.6x0.6) QRect(722,429 53x53) QRect(743,429 32x32) Digikam::OpenCVFaceDetector::cascadeResult: detectMultiScale: image size 32 32 searchIncrement 1.1 grouping 2 flags 0 min size 5 5 Digikam::OpenCVFaceDetector::cascadeResult: detectMultiScale gave () Digikam::OpenCVFaceDetector::verifyFace: Verifying face QRect(722,429 53x53) using cascade 7 Digikam::OpenCVFaceDetector::verifyFace: feature QRectF(0.2,0.25 0.6x0.6) QRect(722,429 53x53) QRect(733,442 32x32) Digikam::OpenCVFaceDetector::cascadeResult: detectMultiScale: image size 32 32 searchIncrement 1.1 grouping 2 flags 0 min size 5 5 Digikam::OpenCVFaceDetector::cascadeResult: detectMultiScale gave () Digikam::OpenCVFaceDetector::verifyFace: Verifying face QRect(722,429 53x53) using cascade 8 Digikam::OpenCVFaceDetector::verifyFace: feature QRectF(0.1,0.4 0.8x0.6) QRect(722,429 53x53) QRect(727,450 42x32) Digikam::OpenCVFaceDetector::cascadeResult: detectMultiScale: image size 42 32 searchIncrement 1.1 grouping 2 flags 0 min size 5 5 Digikam::OpenCVFaceDetector::cascadeResult: detectMultiScale gave () Digikam::OpenCVFaceDetector::verifyFace: Verifying face QRect(131,206 97x97) using cascade 0 Digikam::OpenCVFaceDetector::cascadeResult: detectMultiScale: image size 177 177 searchIncrement 1.1 grouping 3 flags 0 min size 58 58 Digikam::OpenCVFaceDetector::cascadeResult: detectMultiScale gave (QRect(41,38 99x99)) Digikam::OpenCVFaceDetector::verifyFace: Verifying face QRect(131,206 97x97) using cascade 1 Digikam::OpenCVFaceDetector::cascadeResult: detectMultiScale: image size 177 177 searchIncrement 1.1 grouping 3 flags 0 min size 58 58 Digikam::OpenCVFaceDetector::cascadeResult: detectMultiScale gave (QRect(37,37 105x105)) Digikam::OpenCVFaceDetector::verifyFace: Verifying face QRect(131,206 97x97) using cascade 2 Digikam::OpenCVFaceDetector::verifyFace: Verifying face QRect(131,206 97x97) using cascade 3 Digikam::OpenCVFaceDetector::cascadeResult: detectMultiScale: image size 177 177 searchIncrement 1.1 grouping 3 flags 0 min size 58 58 Digikam::OpenCVFaceDetector::cascadeResult: detectMultiScale gave () Digikam::OpenCVFaceDetector::verifyFace: Verifying face QRect(131,206 97x97) using cascade 4 Digikam::OpenCVFaceDetector::cascadeResult: detectMultiScale: image size 177 177 searchIncrement 1.1 grouping 3 flags 0 min size 58 58 Digikam::OpenCVFaceDetector::cascadeResult: detectMultiScale gave () Digikam::OpenCVFaceDetector::verifyFace: Verifying face QRect(131,206 97x97) using cascade 5 Digikam::OpenCVFaceDetector::verifyFace: feature QRectF(0,0 0.6x0.6) QRect(131,206 97x97) QRect(131,206 58x58) Digikam::OpenCVFaceDetector::cascadeResult: detectMultiScale: image size 58 58 searchIncrement 1.1 grouping 2 flags 0 min size 10 10 Digikam::OpenCVFaceDetector::cascadeResult: detectMultiScale gave (QRect(19,28 32x21)) Digikam::OpenCVFaceDetector::verifyFace: Verifying face QRect(131,206 97x97) using cascade 6 Digikam::OpenCVFaceDetector::verifyFace: feature QRectF(0.4,0 0.6x0.6) QRect(131,206 97x97) QRect(170,206 58x58) Digikam::OpenCVFaceDetector::cascadeResult: detectMultiScale: image size 58 58 searchIncrement 1.1 grouping 2 flags 0 min size 10 10 Digikam::FaceUtils::writeUnconfirmedResults: Entry QRect(528,813 457x457)290overlapsQRect(522,813 457x457)603, skipping Digikam::DImg::copy: : return null image! ( false , 0 , 0 ) Digikam::OpenCVFaceDetector::cascadeResult: detectMultiScale gave (QRect(20,30 22x14)) Digikam::OpenCVFaceDetector::verifyFace: Verifying face QRect(131,206 97x97) using cascade 7 Digikam::OpenCVFaceDetector::verifyFace: feature QRectF(0.2,0.25 0.6x0.6) QRect(131,206 97x97) QRect(150,230 58x58) Digikam::OpenCVFaceDetector::cascadeResult: detectMultiScale: image size 58 58 searchIncrement 1.1 grouping 2 flags 0 min size 10 10 Digikam::OpenCVFaceDetector::cascadeResult: detectMultiScale gave (QRect(27,31 18x15)) Digikam::OpenCVFaceDetector::verifyFace: Verifying face QRect(131,206 97x97) using cascade 8 Digikam::OpenCVFaceDetector::verifyFace: feature QRectF(0.1,0.4 0.8x0.6) QRect(131,206 97x97) QRect(141,245 78x58) Digikam::OpenCVFaceDetector::cascadeResult: detectMultiScale: image size 78 58 searchIncrement 1.1 grouping 2 flags 0 min size 10 10 Digikam::OpenCVFaceDetector::cascadeResult: detectMultiScale gave () Digikam::DetectionWorker::process: Found 2 faces in "2009-12-29_205736 - DSC05916 (001).JPG" QSize(2592, 1944) QSize(2592, 1944) Digikam::DMetadata::getIccProfile: Exif color-space tag is sRGB. Using default sRGB ICC profile. Digikam::MetaEngine::getImageOrientation: Orientation => Exif.Image.Orientation => 6 Digikam::IccManager::IccManager: Cannot open workspace color profile "/tmp/.mount_digikanbwKZQ/usr/share/digikam/profiles/srgb-d65.icm" Digikam::DImg::load: "/home/mathieu/Images/Photos/0000-00-00 - Photos - Famille/foo/2009-12-29_205829 - DSC05920 (001).JPG" : JPEG file identified Digikam::DMetadata::getImageHistory: Loading image history "" Digikam::MetaEngine::getImageDateTime: DateTime => Exif.Photo.DateTimeOriginal => QDateTime(2009-12-29 20:58:29.000 CET Qt::TimeSpec(LocalTime)) Digikam::MetaEngine::getImageDateTime: DateTime => Exif.Photo.DateTimeDigitized => QDateTime(2009-12-29 20:58:29.000 CET Qt::TimeSpec(LocalTime)) Digikam::DMetadata::getIccProfile: Exif color-space tag is sRGB. Using default sRGB ICC profile. Digikam::MetaEngine::getImageOrientation: Orientation => Exif.Image.Orientation => 6 Digikam::IccManager::IccManager: Cannot open workspace color profile "/tmp/.mount_digikanbwKZQ/usr/share/digikam/profiles/srgb-d65.icm" Digikam::DImg::load: "/home/mathieu/Images/Photos/0000-00-00 - Photos - Famille/foo/2009-12-29_205835 - DSC05921 (001).JPG" : JPEG file identified Digikam::DMetadata::getImageHistory: Loading image history "" Digikam::MetaEngine::getImageDateTime: DateTime => Exif.Photo.DateTimeOriginal => QDateTime(2009-12-29 20:58:35.000 CET Qt::TimeSpec(LocalTime)) Digikam::MetaEngine::getImageDateTime: DateTime => Exif.Photo.DateTimeDigitized => QDateTime(2009-12-29 20:58:35.000 CET Qt::TimeSpec(LocalTime)) Digikam::FacePipeline::Private::checkFinished: Check for finish: 17 packages, 0 infos to filter, hasFinished() false Digikam::FacePipeline::Private::checkFinished: Check for finish: 16 packages, 0 infos to filter, hasFinished() false Digikam::FacePipeline::Private::checkFinished: Check for finish: 15 packages, 0 infos to filter, hasFinished() false Digikam::DImg::load: "/home/mathieu/Images/Photos/0000-00-00 - Photos - Famille/foo/2009-12-29_205916 - DSC05922 (001).JPG" : JPEG file identified /tmp/.mount_digikavmZOvq/AppRun : ligne 115 : 27207 Erreur de segmentation digikam $@
It sound like a crash in face engine, but not sure. We need a GDB backtrace. You can run the AppImage bundle in GDB with the "debug" option to pass on command line. Look here for details : https://files.kde.org/digikam/README Gilles Caulier
Digikam::DImg::load: "/home/mathieu/Images/Photos/0000-00-00 - Photos - Famille/foo/2005-08-07_170334 - DSC01571 (001).JPG" : JPEG file identified Digikam::DMetadata::getImageHistory: Loading image history "" Digikam::MetaEngine::getImageDateTime: DateTime => Exif.Photo.DateTimeOriginal => QDateTime(2005-08-07 17:03:34.000 CEST Qt::TimeSpec(LocalTime)) Digikam::MetaEngine::getImageDateTime: DateTime => Exif.Photo.DateTimeDigitized => QDateTime(2005-08-07 17:03:34.000 CEST Qt::TimeSpec(LocalTime)) Digikam::DMetadata::getIccProfile: Exif color-space tag is sRGB. Using default sRGB ICC profile. Digikam::MetaEngine::getImageOrientation: Orientation => Exif.Image.Orientation => 1 Digikam::IccManager::IccManager: Cannot open workspace color profile "/tmp/.mount_digikanbwKZQ/usr/share/digikam/profiles/srgb-d65.icm" Digikam::FaceUtils::writeUnconfirmedResults: Entry QRect(794,590 191x191)53overlapsQRect(797,590 191x191)603, skipping Digikam::DImg::copy: : return null image! ( false , 0 , 0 ) Digikam::FaceUtils::writeUnconfirmedResults: Entry QRect(1393,761 253x254)603overlapsQRect(1393,761 253x254)603, skipping Digikam::FaceUtils::writeUnconfirmedResults: Entry QRect(809,220 189x190)38overlapsQRect(809,223 187x187)603, skipping Digikam::FaceUtils::writeUnconfirmedResults: Entry QRect(1224,256 172x172)603overlapsQRect(1224,256 172x172)603, skipping Digikam::DImg::copy: : return null image! ( false , 0 , 0 ) Digikam::FaceUtils::writeUnconfirmedResults: Entry QRect(1085,807 125x125)603overlapsQRect(1085,807 125x125)603, skipping Digikam::FaceUtils::writeUnconfirmedResults: Entry QRect(891,310 115x115)38overlapsQRect(888,307 120x120)603, skipping Digikam::DImg::copy: : return null image! ( false , 0 , 0 ) [New Thread 0x7fff2affd700 (LWP 32060)] [Thread 0x7fff2affd700 (LWP 31962) exited] [Thread 0x7fff4ab6d700 (LWP 32049) exited] Thread 611 "Thread (pooled)" received signal SIGSEGV, Segmentation fault. [Switching to Thread 0x7ffeef7fe700 (LWP 28287)] 0x00007fffe8b8df78 in main_arena () from /lib/x86_64-linux-gnu/libc.so.6
(gdb) bt #0 0x00007fffe8b8df78 in main_arena () from /lib/x86_64-linux-gnu/libc.so.6 #1 0x00007ffff63d6ec8 in Digikam::SharedLoadingTask::postProcess (this=0x83768f0) at /b/dktemp/digikam-master/core/libs/threadimageio/loadsavetask.cpp:335 #2 0x00007ffff63da442 in Digikam::PreviewLoadingTask::execute (this=0x83768f0) at /b/dktemp/digikam-master/core/libs/threadimageio/previewtask.cpp:399 #3 0x00007ffff63c6605 in Digikam::LoadSaveThread::run (this=0x866530) at /b/dktemp/digikam-master/core/libs/threadimageio/loadsavethread.cpp:133 #4 0x00007ffff640838e in Digikam::DynamicThread::Private::run (this=0x672c9c0) at /b/dktemp/digikam-master/core/libs/threads/dynamicthread.cpp:183 #5 0x00007fffea4bb60f in ?? () from /tmp/.mount_digikaedpRtT/usr/lib/libQt5Core.so.5 #6 0x00007fffea4bf18a in ?? () from /tmp/.mount_digikaedpRtT/usr/lib/libQt5Core.so.5 #7 0x00007ffff536a494 in start_thread (arg=0x7ffeef7fe700) at pthread_create.c:333 #8 0x00007fffe88dcacf in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:97 (gdb)
Git commit 50b066772cc02a2c9de39fb9676df8fad30ec146 by Maik Qualmann. Committed on 28/08/2018 at 06:06. Pushed by mqualmann into branch 'master'. postprocessing only with valid image M +6 -1 core/libs/threadimageio/loadsavetask.cpp https://commits.kde.org/digikam/50b066772cc02a2c9de39fb9676df8fad30ec146
Mathieu, Look the message : Digikam::IccManager::IccManager: Cannot open workspace color profile "/tmp/.mount_digikanbwKZQ/usr/share/digikam/profiles/srgb-d65.icm" This file must be included in the AppImage bundle. At run time, AppImage is decompressed in memory and monted to a temporary dir. This one change at each session. On your trace : /tmp/.mount_digikanbwKZQ/ is the temporary dir. The dir name is always mounted to /tmp and named with the prefix .mount_digika, the rest is change. It's easy to found new one used at a new session. Just list dir starting with ".mount_digika" in /tmp. It must have only one. So, my question is : do you see the "usr/share/digikam/profiles/srgb-d65.icm" file in the temporary directory ? Gilles Caulier
Yes, srgb-d65.icm exists in this folder
As expected... So the question is : why this file cannot be loaded as we can see in the debug trace from the console. What's the properties of this ICC profile from the bundle with ls -al ? Gilles Caulier
-rw-r--r--. 1 root root 6924 août 17 18:28 srgb-d65.icm
test with digikam-6.0.0-git-20180817T182155-x86-64.appimage Digikam::MaintenanceMngr::setSettings: wholeAlbums : true wholeTags : true Albums : 1073 Tags : 557 useMutiCoreCPU : true newItems : true thumbnails : true scanThumbs : true fingerPrints : true scanFingerPrints : true duplicates : false minSimilarity : 90 maxSimilarity : 100 duplicatesRestriction : 0 faceManagement : true faceScannedHandling : 1 qualitySort : false quality : EnableSorter : true DetectBlur : true DetectNoise : true DetectCompression : true DetectOverexposure :true LowQRejected : true MediumQPending : true HighQAccepted : true Speed : 1 Rejected Threshold: 10 Pending Threshold : 40 Accepted Threshold: 60 Blur Weight : 100 Noise Weight : 100 Compression Weight: 100 qualityScanMode : 1 metadataSync : true syncDirection : 0 databaseCleanup : true cleanThumbDb : true cleanFacesDb : true shrinkDatabases : true Digikam::MaintenanceMngr::stage1: stage1 Digikam::NewItemsFinder::slotStart: scan mode: CompleteCollectionScan [Thread 0x7ffeeb7fe700 (LWP 10042) exited] Digikam::NewItemsFinder::slotTotalFilesToScan: total scan value : 68646 Digikam::CollectionScanner::completeHistoryScanning: items to tag () Digikam::CollectionScanner::completeScan: Complete scan took: 17432 msecs. Digikam::ActionThreadBase::setMaximumNumberOfThreads: Using 4 CPU core to run threads [New Thread 0x7ffeeb7fe700 (LWP 10533)] Digikam::ActionThreadBase::run: Action Thread run 1 new jobs [New Thread 0x7ffeebfff700 (LWP 10534)] Digikam::ImageQueryBuilder::buildQueryFromXml: " ( ( (ImageTagProperties.tagid=? OR ImageTagProperties.tagid IN (SELECT id FROM TagsTree WHERE pid=?)) AND ImageTagProperties.property=? ) OR ( (ImageTagProperties.tagid=? OR ImageTagProperties.tagid IN (SELECT id FROM TagsTree WHERE pid=?)) AND ImageTagProperties.property=? ) OR ( (ImageTagProperties.tagid=? OR ImageTagProperties.tagid IN (SELECT id FROM TagsTree WHERE pid=?)) AND ImageTagProperties.property=? ) ) " Digikam::ImageLister::listImageTagPropertySearch: Search query: "SELECT DISTINCT Images.id, Images.name, Images.album, Albums.albumRoot, ImageInformation.rating, Images.category, ImageInformation.format, ImageInformation.creationDate, Images.modificationDate, Images.fileSize, ImageInformation.width, ImageInformation.height, ImageTagProperties.value, ImageTagProperties.property, ImageTagProperties.tagid FROM Images INNER JOIN ImageTagProperties ON ImageTagProperties.imageid=Images.id LEFT JOIN ImageInformation ON Images.id=ImageInformation.imageid INNER JOIN Albums ON Albums.id=Images.album WHERE Images.status=1 AND ( ( ( (ImageTagProperties.tagid=? OR ImageTagProperties.tagid IN (SELECT id FROM TagsTree WHERE pid=?)) AND ImageTagProperties.property=? ) OR ( (ImageTagProperties.tagid=? OR ImageTagProperties.tagid IN (SELECT id FROM TagsTree WHERE pid=?)) AND ImageTagProperties.property=? ) OR ( (ImageTagProperties.tagid=? OR ImageTagProperties.tagid IN (SELECT id FROM TagsTree WHERE pid=?)) AND ImageTagProperties.property=? ) ) );" (QVariant(int, 603), QVariant(int, 603), QVariant(QString, "autodetectedPerson"), QVariant(int, 603), QVariant(int, 603), QVariant(QString, "autodetectedFace"), QVariant(int, 603), QVariant(int, 603), QVariant(QString, "tagRegion")) Digikam::NewItemsFinder::slotTotalFilesToScan: total scan value : 68646 Digikam::ImageLister::listImageTagPropertySearch: Search result: 16503 Digikam::ActionThreadBase::cancel: Cancel Main Thread [Thread 0x7ffeeb7fe700 (LWP 10533) exited] [New Thread 0x7ffeeb7fe700 (LWP 10539)] Digikam::BdEngineBackendPrivate::checkRetrySQLiteLockError: Database is locked. Waited 0 Digikam::ActionThreadBase::slotJobFinished: One job is done Digikam::ActionThreadBase::cancel: Cancel Main Thread [Thread 0x7ffeebfff700 (LWP 10534) exited] Digikam::BdEngineBackendPrivate::checkRetrySQLiteLockError: Database is locked. Waited 250 Digikam::BdEngineBackendPrivate::checkRetrySQLiteLockError: Database is locked. Waited 500 Digikam::BdEngineBackendPrivate::checkRetrySQLiteLockError: Database is locked. Waited 750 Digikam::CollectionScanner::completeHistoryScanning: items to tag () Digikam::BdEngineBackendPrivate::checkRetrySQLiteLockError: Database is locked. Waited 1000 Digikam::BdEngineBackendPrivate::checkRetrySQLiteLockError: Database is locked. Waited 1250 Digikam::BdEngineBackendPrivate::checkRetrySQLiteLockError: Database is locked. Waited 1500 Digikam::BdEngineBackendPrivate::checkRetrySQLiteLockError: Database is locked. Waited 1750 Digikam::BdEngineBackendPrivate::checkRetrySQLiteLockError: Database is locked. Waited 2000 Digikam::BdEngineBackendPrivate::checkRetrySQLiteLockError: Database is locked. Waited 2250 Digikam::BdEngineBackendPrivate::checkRetrySQLiteLockError: Database is locked. Waited 2500 Digikam::BdEngineBackendPrivate::checkRetrySQLiteLockError: Database is locked. Waited 2750 Digikam::BdEngineBackendPrivate::checkRetrySQLiteLockError: Database is locked. Waited 3000 Digikam::BdEngineBackendPrivate::checkRetrySQLiteLockError: Database is locked. Waited 3250 Digikam::BdEngineBackendPrivate::checkRetrySQLiteLockError: Database is locked. Waited 3500 Digikam::BdEngineBackendPrivate::checkRetrySQLiteLockError: Database is locked. Waited 3750 Digikam::BdEngineBackendPrivate::checkRetrySQLiteLockError: Database is locked. Waited 4000 Digikam::BdEngineBackendPrivate::checkRetrySQLiteLockError: Database is locked. Waited 4250 Digikam::BdEngineBackendPrivate::checkRetrySQLiteLockError: Database is locked. Waited 4500 Digikam::BdEngineBackendPrivate::checkRetrySQLiteLockError: Database is locked. Waited 4750 Digikam::BdEngineBackendPrivate::checkRetrySQLiteLockError: Database is locked. Waited 5000 Digikam::BdEngineBackendPrivate::checkRetrySQLiteLockError: Database is locked. Waited 5250 Digikam::BdEngineBackendPrivate::checkRetrySQLiteLockError: Database is locked. Waited 5500 Digikam::BdEngineBackendPrivate::checkRetrySQLiteLockError: Database is locked. Waited 5750 Digikam::BdEngineBackendPrivate::checkRetrySQLiteLockError: Database is locked. Waited 6000 Digikam::BdEngineBackendPrivate::checkRetrySQLiteLockError: Database is locked. Waited 6250 Digikam::BdEngineBackendPrivate::checkRetrySQLiteLockError: Database is locked. Waited 6500 Digikam::CollectionScanner::completeScan: Complete scan (file scanning deferred) took: 7735 msecs. Digikam::MaintenanceMngr::stage2: stage2 Digikam::ActionThreadBase::setMaximumNumberOfThreads: Using 4 CPU core to run threads Digikam::ActionThreadBase::setMaximumNumberOfThreads: Using 4 CPU core to run threads [New Thread 0x7ffeebfff700 (LWP 10554)] Digikam::ActionThreadBase::run: Action Thread run 1 new jobs [New Thread 0x7fff317fa700 (LWP 10555)] Digikam::RecognitionDatabase::Private::Private: Face database ready for use ...... Digikam::DImg::load: "/home/mathieu/Images/Photos/0000-00-00 - Photos - Famille/foo/2003-06-28_000000 - Divers ( (013).jpg" : JPEG file identified Digikam::OpenCVFaceDetector::cascadeResult: detectMultiScale gave (QRect(206,117 49x49), QRect(338,120 57x57)) Digikam::OpenCVFaceDetector::verifyFace: Verifying face QRect(206,117 49x49) using cascade 0 Digikam::OpenCVFaceDetector::cascadeResult: detectMultiScale: image size 129 129 searchIncrement 1.1 grouping 3 flags 0 min size 29 29 Digikam::OpenCVFaceDetector::cascadeResult: detectMultiScale gave (QRect(40,41 47x47)) Digikam::OpenCVFaceDetector::verifyFace: Verifying face QRect(206,117 49x49) using cascade 1 Digikam::OpenCVFaceDetector::cascadeResult: detectMultiScale: image size 129 129 searchIncrement 1.1 grouping 3 flags 0 min size 29 29 Digikam::OpenCVFaceDetector::cascadeResult: detectMultiScale gave (QRect(38,40 50x50)) Digikam::OpenCVFaceDetector::verifyFace: Verifying face QRect(206,117 49x49) using cascade 2 Digikam::OpenCVFaceDetector::verifyFace: Verifying face QRect(206,117 49x49) using cascade 3 Digikam::OpenCVFaceDetector::cascadeResult: detectMultiScale: image size 129 129 searchIncrement 1.1 grouping 3 flags 0 min size 29 29 Digikam::OpenCVFaceDetector::cascadeResult: detectMultiScale gave () Digikam::OpenCVFaceDetector::verifyFace: Verifying face QRect(206,117 49x49) using cascade 4 Digikam::OpenCVFaceDetector::cascadeResult: detectMultiScale: image size 129 129 searchIncrement 1.1 grouping 3 flags 0 min size 29 29 Digikam::OpenCVFaceDetector::cascadeResult: detectMultiScale gave () Digikam::OpenCVFaceDetector::verifyFace: Verifying face QRect(206,117 49x49) using cascade 5 Digikam::OpenCVFaceDetector::verifyFace: feature QRectF(0,0 0.6x0.6) QRect(206,117 49x49) QRect(206,117 29x29) Digikam::OpenCVFaceDetector::cascadeResult: detectMultiScale: image size 29 29 searchIncrement 1.1 grouping 2 flags 0 min size 5 5 Digikam::OpenCVFaceDetector::cascadeResult: detectMultiScale gave () Digikam::OpenCVFaceDetector::verifyFace: Verifying face QRect(206,117 49x49) using cascade 6 Digikam::OpenCVFaceDetector::verifyFace: feature QRectF(0.4,0 0.6x0.6) QRect(206,117 49x49) QRect(226,117 29x29) Digikam::OpenCVFaceDetector::cascadeResult: detectMultiScale: image size 29 29 searchIncrement 1.1 grouping 2 flags 0 min size 5 5 Digikam::OpenCVFaceDetector::cascadeResult: detectMultiScale gave (QRect(5,12 19x12)) Digikam::OpenCVFaceDetector::verifyFace: Verifying face QRect(206,117 49x49) using cascade 7 Digikam::OpenCVFaceDetector::verifyFace: feature QRectF(0.2,0.25 0.6x0.6) QRect(206,117 49x49) QRect(216,129 29x29) Digikam::OpenCVFaceDetector::cascadeResult: detectMultiScale: image size 29 29 searchIncrement 1.1 grouping 2 flags 0 min size 5 5 Digikam::OpenCVFaceDetector::cascadeResult: detectMultiScale gave () Digikam::OpenCVFaceDetector::verifyFace: Verifying face QRect(206,117 49x49) using cascade 8 Digikam::OpenCVFaceDetector::verifyFace: feature QRectF(0.1,0.4 0.8x0.6) QRect(206,117 49x49) QRect(211,137 39x29) Digikam::OpenCVFaceDetector::cascadeResult: detectMultiScale: image size 39 29 searchIncrement 1.1 grouping 2 flags 0 min size 5 5 Digikam::OpenCVFaceDetector::cascadeResult: detectMultiScale gave () Digikam::OpenCVFaceDetector::verifyFace: Verifying face QRect(338,120 57x57) using cascade 0 Digikam::OpenCVFaceDetector::cascadeResult: detectMultiScale: image size 137 137 searchIncrement 1.1 grouping 3 flags 0 min size 34 34 Digikam::OpenCVFaceDetector::cascadeResult: detectMultiScale gave (QRect(38,38 61x61)) Digikam::OpenCVFaceDetector::verifyFace: Verifying face QRect(338,120 57x57) using cascade 1 Digikam::OpenCVFaceDetector::cascadeResult: detectMultiScale: image size 137 137 searchIncrement 1.1 grouping 3 flags 0 min size 34 34 Digikam::OpenCVFaceDetector::cascadeResult: detectMultiScale gave (QRect(39,39 58x58), QRect(37,82 52x52)) Digikam::OpenCVFaceDetector::verifyFace: Verifying face QRect(338,120 57x57) using cascade 2 Digikam::OpenCVFaceDetector::verifyFace: Verifying face QRect(338,120 57x57) using cascade 3 Digikam::OpenCVFaceDetector::cascadeResult: detectMultiScale: image size 137 137 searchIncrement 1.1 grouping 3 flags 0 min size 34 34 Digikam::OpenCVFaceDetector::cascadeResult: detectMultiScale gave () Digikam::OpenCVFaceDetector::verifyFace: Verifying face QRect(338,120 57x57) using cascade 4 Digikam::OpenCVFaceDetector::cascadeResult: detectMultiScale: image size 137 137 searchIncrement 1.1 grouping 3 flags 0 min size 34 34 Digikam::OpenCVFaceDetector::cascadeResult: detectMultiScale gave () Digikam::OpenCVFaceDetector::verifyFace: Verifying face QRect(338,120 57x57) using cascade 5 Digikam::OpenCVFaceDetector::verifyFace: feature QRectF(0,0 0.6x0.6) QRect(338,120 57x57) QRect(338,120 34x34) Digikam::OpenCVFaceDetector::cascadeResult: detectMultiScale: image size 34 34 searchIncrement 1.1 grouping 2 flags 0 min size 6 6 Digikam::OpenCVFaceDetector::cascadeResult: detectMultiScale gave () Digikam::OpenCVFaceDetector::verifyFace: Verifying face QRect(338,120 57x57) using cascade 6 Digikam::OpenCVFaceDetector::verifyFace: feature QRectF(0.4,0 0.6x0.6) QRect(338,120 57x57) QRect(361,120 34x34) Digikam::OpenCVFaceDetector::cascadeResult: detectMultiScale: image size 34 34 searchIncrement 1.1 grouping 2 flags 0 min size 6 6 Digikam::OpenCVFaceDetector::cascadeResult: detectMultiScale gave () Digikam::OpenCVFaceDetector::verifyFace: Verifying face QRect(338,120 57x57) using cascade 7 Digikam::OpenCVFaceDetector::verifyFace: feature QRectF(0.2,0.25 0.6x0.6) QRect(338,120 57x57) QRect(349,134 34x34) Digikam::OpenCVFaceDetector::cascadeResult: detectMultiScale: image size 34 34 searchIncrement 1.1 grouping 2 flags 0 min size 6 6 Digikam::OpenCVFaceDetector::cascadeResult: detectMultiScale gave () Digikam::OpenCVFaceDetector::verifyFace: Verifying face QRect(338,120 57x57) using cascade 8 Digikam::OpenCVFaceDetector::verifyFace: feature QRectF(0.1,0.4 0.8x0.6) QRect(338,120 57x57) QRect(344,143 46x34) Digikam::OpenCVFaceDetector::cascadeResult: detectMultiScale: image size 46 34 searchIncrement 1.1 grouping 2 flags 0 min size 6 6 Digikam::OpenCVFaceDetector::cascadeResult: detectMultiScale gave () Digikam::DetectionWorker::process: Found 2 faces in "2003-06-28_000000 - Divers ( (008).jpg" QSize(1242, 1908) QSize(1242, 1908) Digikam::DMetadata::getImageHistory: Loading image history "" Digikam::MetaEngine::getImageDateTime: DateTime => Exif.Photo.DateTimeOriginal => QDateTime(2003-06-28 00:00:00.000 CEST Qt::TimeSpec(LocalTime)) Digikam::MetaEngine::getImageDateTime: DateTime => Exif.Photo.DateTimeDigitized => QDateTime(2003-06-28 00:00:00.000 CEST Qt::TimeSpec(LocalTime)) Digikam::FaceUtils::writeUnconfirmedResults: Entry QRect(328,105 51x51)603overlapsQRect(328,105 51x51)603, skipping Digikam::MetaEngine::getImageOrientation: Orientation => Exif.Image.Orientation => 1 Digikam::IccManager::IccManager: Cannot open workspace color profile "/tmp/.mount_digikanbwKZQ/usr/share/digikam/profiles/srgb-d65.icm" Digikam::DImg::load: "/home/mathieu/Images/Photos/0000-00-00 - Photos - Famille/foo/2003-06-28_000000 - Divers ( (014).jpg" : JPEG file identified Digikam::DMetadata::getImageHistory: Loading image history "" Digikam::MetaEngine::getImageDateTime: DateTime => Exif.Photo.DateTimeOriginal => QDateTime(2003-06-28 00:00:00.000 CEST Qt::TimeSpec(LocalTime)) Digikam::MetaEngine::getImageDateTime: DateTime => Exif.Photo.DateTimeDigitized => QDateTime(2003-06-28 00:00:00.000 CEST Qt::TimeSpec(LocalTime)) Digikam::FaceUtils::writeUnconfirmedResults: Entry QRect(760,136 54x54)603overlapsQRect(760,136 54x54)603, skipping Digikam::FaceUtils::writeUnconfirmedResults: Entry QRect(122,159 47x47)603overlapsQRect(122,159 47x47)603, skipping Digikam::MetaEngine::getImageOrientation: Orientation => Exif.Image.Orientation => 1 Digikam::IccManager::IccManager: Cannot open workspace color profile "/tmp/.mount_digikanbwKZQ/usr/share/digikam/profiles/srgb-d65.icm" Digikam::DImg::load: "/home/mathieu/Images/Photos/0000-00-00 - Photos - Famille/foo/2003-06-28_000000 - Divers ( (015).jpg" : JPEG file identified Digikam::DMetadata::getImageHistory: Loading image history "" Digikam::MetaEngine::getImageDateTime: DateTime => Exif.Photo.DateTimeOriginal => QDateTime(2003-06-28 00:00:00.000 CEST Qt::TimeSpec(LocalTime)) Digikam::MetaEngine::getImageDateTime: DateTime => Exif.Photo.DateTimeDigitized => QDateTime(2003-06-28 00:00:00.000 CEST Qt::TimeSpec(LocalTime)) Thread 115 "Thread (pooled)" received signal SIGSEGV, Segmentation fault. [Switching to Thread 0x7fff4a660700 (LWP 12195)] 0x00007ffff61a8d0a in std::__atomic_base<int>::load (__m=std::memory_order_relaxed, this=<optimized out>) at /opt/rh/devtoolset-4/root././/include/c++/5.3.1/bits/atomic_base.h:396 396 /opt/rh/devtoolset-4/root././/include/c++/5.3.1/bits/atomic_base.h: Aucun fichier ou dossier de ce type. backtrace (gdb) bt #0 0x00007ffff61a8d0a in std::__atomic_base<int>::load (__m=std::memory_order_relaxed, this=<optimized out>) at /opt/rh/devtoolset-4/root././/include/c++/5.3.1/bits/atomic_base.h:396 #1 QAtomicOps<int>::load<int> (_q_value=...) at ././/include/QtCore/qatomic_cxx11.h:227 #2 QBasicAtomicInteger<int>::load (this=<optimized out>) at ././/include/QtCore/qbasicatomic.h:102 #3 QtPrivate::RefCount::isShared (this=<optimized out>) at ././/include/QtCore/qrefcount.h:101 #4 QMap<QString, QVariant>::detach (this=0x7cd9398) at ././/include/QtCore/qmap.h:364 #5 QMap<QString, QVariant>::insert (this=0x7cd9398, akey=..., avalue=...) at ././/include/QtCore/qmap.h:696 #6 0x00007ffff6313a90 in Digikam::DImg::setAttribute (this=this@entry=0x46e7de8, key=..., value=...) at /b/dktemp/digikam-master/core/libs/dimg/dimg.cpp:1051 #7 0x00007ffff63c688f in Digikam::LoadSaveThread::exifRotate (image=..., filePath=...) at /b/dktemp/digikam-master/core/libs/threadimageio/loadsavethread.cpp:336 #8 0x00007ffff63da88f in Digikam::PreviewLoadingTask::execute (this=0x46e7bf0) at /b/dktemp/digikam-master/core/libs/threadimageio/previewtask.cpp:394 #9 0x00007ffff63c6605 in Digikam::LoadSaveThread::run (this=0x27ac840) at /b/dktemp/digikam-master/core/libs/threadimageio/loadsavethread.cpp:133 #10 0x00007ffff640838e in Digikam::DynamicThread::Private::run (this=0x10f13a0) at /b/dktemp/digikam-master/core/libs/threads/dynamicthread.cpp:183 #11 0x00007fffea4bb60f in ?? () from /tmp/.mount_digikafBh7z7/usr/lib/libQt5Core.so.5 #12 0x00007fffea4bf18a in ?? () from /tmp/.mount_digikafBh7z7/usr/lib/libQt5Core.so.5 #13 0x00007ffff536a494 in start_thread (arg=0x7fff4a660700) at pthread_create.c:333 #14 0x00007fffe88dcacf in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:97 (gdb)
The version you tested is from 17.08.2018. Please test it with the current version from 29.08.2018. Available at https://files.kde.org/digikam/ Maik
Sorry for the mistake. I'll perform the test with the last version and come back to you
Digikam::OpenCVFaceDetector::cascadeResult: detectMultiScale gave () Digikam::DetectionWorker::process: Found 0 faces in "2003-06-28_165437 - 150603 0 (001).jpg" QSize(2048, 1536) QSize(2048, 1536) Digikam::OpenCVFaceDetector::cascadeResult: detectMultiScale: image size 800 600 searchIncrement 1.1 grouping 3 flags 1 min size 26 26 Digikam::FaceUtils::writeUnconfirmedResults: Entry QRect(232,35 84x84)603overlapsQRect(232,35 84x84)603, skipping [New Thread 0x7fff46ffd700 (LWP 10780)] [Thread 0x7fff267fc700 (LWP 10695) exited] Thread 95 "Thread (pooled)" received signal SIGSEGV, Segmentation fault. [Switching to Thread 0x7fff1dffb700 (LWP 9844)] 0x00007ffff630a08e in QSharedDataPointer<Digikam::MetaEngineData::Private>::operator= (o=..., this=0x812f590) at ././/include/QtCore/qshareddata.h:99 99 ././/include/QtCore/qshareddata.h: Aucun fichier ou dossier de ce type. (gdb) bt #0 0x00007ffff630a08e in QSharedDataPointer<Digikam::MetaEngineData::Private>::operator= (o=..., this=0x812f590) at ././/include/QtCore/qshareddata.h:99 #1 Digikam::MetaEngineData::operator= (this=0x812f590, other=...) at /b/dktemp/digikam-master/core/libs/dmetadata/metaengine_data.cpp:51 #2 0x00007ffff62d5edc in Digikam::DImg::setMetadata (this=<optimized out>, data=...) at /b/dktemp/digikam-master/core/libs/dimg/dimg.cpp:1016 #3 0x00007ffff617f671 in Digikam::DImgLoader::readMetadata (this=0x7fff1dffa880, filePath=...) at /b/dktemp/digikam-master/core/libs/dimg/loaders/dimgloader.cpp:219 #4 0x00007ffff6188cee in Digikam::JPEGLoader::load (this=this@entry=0x7fff1dffa880, filePath=..., observer=observer@entry=0x813b0b0) at /b/dktemp/digikam-master/core/libs/dimg/loaders/jpegloader.cpp:92 #5 0x00007ffff62de709 in Digikam::DImg::load (this=this@entry=0x813b298, filePath=..., loadFlagsInt=loadFlagsInt@entry=63, observer=observer@entry=0x813b0b0, rawDecodingSettings=...) at /b/dktemp/digikam-master/core/libs/dimg/dimg.cpp:430 #6 0x00007ffff62dec80 in Digikam::DImg::load (this=this@entry=0x813b298, filePath=..., observer=observer@entry=0x813b0b0, rawDecodingSettings=...) at /b/dktemp/digikam-master/core/libs/dimg/dimg.cpp:374 #7 0x00007ffff63a2526 in Digikam::PreviewLoadingTask::execute (this=0x813b0a0) at /b/dktemp/digikam-master/core/libs/threadimageio/previewtask.cpp:325 #8 0x00007ffff638dcc5 in Digikam::LoadSaveThread::run (this=0x24a37b0) at /b/dktemp/digikam-master/core/libs/threadimageio/loadsavethread.cpp:133 #9 0x00007ffff63cfc0e in Digikam::DynamicThread::Private::run (this=0x4350d40) at /b/dktemp/digikam-master/core/libs/threads/dynamicthread.cpp:183 #10 0x000000347b8aa60f in ?? () from /tmp/.mount_digika6ykiGm/usr/lib/libQt5Core.so.5 #11 0x000000347b8ae18a in ?? () from /tmp/.mount_digika6ykiGm/usr/lib/libQt5Core.so.5 #12 0x00007ffff5706494 in start_thread (arg=0x7fff1dffb700) at pthread_create.c:333 #13 0x00007fffed3f4acf in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:97 (gdb)
Interesting backtrace. It crashes now in another place. If I look at the backtrace, there is really only an explanation, there is no more memory available. I see from the other post, you have 4 CPU cores. How much memory do you have? Can you if digiKam runs with the maintenance tool, please observe the free memory? Maik
I second maik, here. Another Q is : did you use the multi-core option to perform maintenance in parallel ? Gilles Caulier
Git commit 67b2bb528b2be26a9a618a4b361440664070ba93 by Maik Qualmann. Committed on 30/08/2018 at 20:39. Pushed by mqualmann into branch 'master'. do not create meta-engine data on the stack but in the heap M +1 -1 core/libs/dmetadata/metaengine_data.cpp https://commits.kde.org/digikam/67b2bb528b2be26a9a618a4b361440664070ba93
Gilles, look into the Commit, I think that was really a mistake. Can you please build new packages so that Mathieu can test it? Yes, Mathieu used all 4 cores. Maik
Ok i will build a new AppImage tomorrow morning... Gilles Caulier
My laptop is 4 cpus and 4GB memory. Multi-core option was activated during these tests. It won't be possible for me to perform new test today. It will be for Saturday.
In all cases the new appimage will be online and this morning
The commit is not the solution and not necessary, I will undo the change again. The problem I suspect actually in no longer existing memory, even if I look at the other backtraces. For 4 CPU cores probably 4GB memory is not enough, because only a lot less will actually be free. Therefore, for testing we will limit the number of CPU cores used to 1 core per 1GB of free memory. So in order to use 8 CPU cores, then 8GB of free memory would have to be available, otherwise the cores used will be gradually reduced. Maik
Maik, Note that the problem is exactly the same in BQM with multi-core support option We have a file in bugzilla to be able to set the core number to use while running BQM. Gilles
using version from 31/08/2018 and multi-core option activated Digikam::DMetadata::getImageHistory: Loading image history "" Digikam::MetaEngine::getImageDateTime: DateTime => Exif.Photo.DateTimeOriginal => QDateTime(2004-12-26 10:30:47.000 CET Qt::TimeSpec(LocalTime)) Digikam::MetaEngine::getImageDateTime: DateTime => Exif.Photo.DateTimeDigitized => QDateTime(2004-12-26 10:30:47.000 CET Qt::TimeSpec(LocalTime)) Digikam::FacePipeline::Private::checkFinished: Check for finish: 51 packages, 0 infos to filter, hasFinished() false Digikam::ActionThreadBase::cancel: Cancel Main Thread [Thread 0x7fff28ff9700 (LWP 12859) exited] Digikam::DMetadata::getIccProfile: Exif color-space tag is sRGB. Using default sRGB ICC profile. Digikam::MetaEngine::getImageOrientation: Orientation => Exif.Image.Orientation => 1 Digikam::IccManager::IccManager: Cannot open workspace color profile "/tmp/.mount_digikanbwKZQ/usr/share/digikam/profiles/srgb-d65.icm" Thread 89 "Thread (pooled)" received signal SIGSEGV, Segmentation fault. [Switching to Thread 0x7fff2bfff700 (LWP 5815)] 0x0000000000000000 in ?? () (gdb) bt #0 0x0000000000000000 in ?? () #1 0x00007ffff6396260 in Digikam::LoadingCache::notifyNewLoadingProcess (this=this@entry=0x831380, process=process@entry=0x50cd900, description=...) at /b/dktemp/digikam-master/core/libs/threadimageio/loadingcache.cpp:243 #2 0x00007ffff63a34cf in Digikam::PreviewLoadingTask::execute (this=0x50cd730) at /b/dktemp/digikam-master/core/libs/threadimageio/previewtask.cpp:162 #3 0x00007ffff638f145 in Digikam::LoadSaveThread::run (this=0x27519e0) at /b/dktemp/digikam-master/core/libs/threadimageio/loadsavethread.cpp:133 #4 0x00007ffff63d0fce in Digikam::DynamicThread::Private::run (this=0x18a2ea0) at /b/dktemp/digikam-master/core/libs/threads/dynamicthread.cpp:183 #5 0x000000347b8aa60f in ?? () from /tmp/.mount_digikaz1upX1/usr/lib/libQt5Core.so.5 #6 0x000000347b8ae18a in ?? () from /tmp/.mount_digikaz1upX1/usr/lib/libQt5Core.so.5 #7 0x00007ffff570a494 in start_thread (arg=0x7fff2bfff700) at pthread_create.c:333 #8 0x00007fffed3f8acf in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:97 (gdb) I will try without multicore option
run only with one core... Digikam::DImg::load: "/home/mathieu/Images/Photos/0000-00-00 - Photos - Famille/foo/2005-08-07_150341 - 80ans BL (001).jpg" : JPEG file identified Digikam::DMetadata::getImageHistory: Loading image history "" Digikam::MetaEngine::getImageDateTime: DateTime => Exif.Photo.DateTimeOriginal => QDateTime(2005-08-07 15:03:41.000 CEST Qt::TimeSpec(LocalTime)) Digikam::MetaEngine::getImageDateTime: DateTime => Exif.Photo.DateTimeDigitized => QDateTime(2005-08-07 15:03:41.000 CEST Qt::TimeSpec(LocalTime)) Digikam::DMetadata::getIccProfile: Exif color-space tag is sRGB. Using default sRGB ICC profile. Digikam::MetaEngine::getImageOrientation: Orientation => Exif.Image.Orientation => 1 Digikam::IccManager::IccManager: Cannot open workspace color profile "/tmp/.mount_digikanbwKZQ/usr/share/digikam/profiles/srgb-d65.icm" Digikam::FaceUtils::writeUnconfirmedResults: Entry QRect(289,567 422x422)603overlapsQRect(289,567 422x422)603, skipping Thread 92 "Thread (pooled)" received signal SIGSEGV, Segmentation fault. [Switching to Thread 0x7fff45ffb700 (LWP 17366)] 0x0000000000000000 in ?? () (gdb) bt #0 0x0000000000000000 in ?? () #1 0x00007ffff639e7bb in Digikam::LoadingTask::progressInfo (this=0x4bd6350, progress=0.100000001) at /b/dktemp/digikam-master/core/libs/threadimageio/loadsavetask.cpp:63 #2 0x00007ffff618b57f in Digikam::JPEGLoader::load (this=this@entry=0x7fff45ffa880, filePath=..., observer=observer@entry=0x4bd6360) at /b/dktemp/digikam-master/core/libs/dimg/loaders/jpegloader.cpp:374 #3 0x00007ffff62dfb29 in Digikam::DImg::load (this=this@entry=0x4bd6548, filePath=..., loadFlagsInt=loadFlagsInt@entry=63, observer=observer@entry=0x4bd6360, rawDecodingSettings=...) at /b/dktemp/digikam-master/core/libs/dimg/dimg.cpp:430 #4 0x00007ffff62e00a0 in Digikam::DImg::load (this=this@entry=0x4bd6548, filePath=..., observer=observer@entry=0x4bd6360, rawDecodingSettings=...) at /b/dktemp/digikam-master/core/libs/dimg/dimg.cpp:374 #5 0x00007ffff63a353b in Digikam::PreviewLoadingTask::execute (this=0x4bd6350) at /b/dktemp/digikam-master/core/libs/threadimageio/previewtask.cpp:325 #6 0x00007ffff638f145 in Digikam::LoadSaveThread::run (this=0x41badb0) at /b/dktemp/digikam-master/core/libs/threadimageio/loadsavethread.cpp:133 #7 0x00007ffff63d0fce in Digikam::DynamicThread::Private::run (this=0x6759300) at /b/dktemp/digikam-master/core/libs/threads/dynamicthread.cpp:183 #8 0x000000347b8aa60f in ?? () from /tmp/.mount_digika4armiY/usr/lib/libQt5Core.so.5 #9 0x000000347b8ae18a in ?? () from /tmp/.mount_digika4armiY/usr/lib/libQt5Core.so.5 #10 0x00007ffff570a494 in start_thread (arg=0x7fff45ffb700) at pthread_create.c:333 #11 0x00007fffed3f8acf in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:97 (gdb)
Maik, Look like with one or more than one core, the result is the same. Mathieu, Did you use the Color Management option ? If yes, can you try again with CM disabled and just one core ? Perhaps something goes wrong with one of your ICC color profile when preview is extracted in maintenance tool. Gilles Caulier
I just finish a maintenance process without activating faces detection and it works. So I suppose that the problem is related to this option. I will perform a test with only face detection (single, multicore) and after, I will test your request.
It crashes in so many different places, all have almost only in common that it takes place when loading a picture. But by now I think the backtrace is misleading us here. I'm going to make a change to the ICCManager for testing... Maik
Git commit 15f3e3b0645612a8c650cbff58f137f664b287a3 by Maik Qualmann. Committed on 01/09/2018 at 20:05. Pushed by mqualmann into branch 'master'. clear DImg if we have a problem with loading color profile M +1 -0 core/libs/dimg/filters/icc/iccmanager.cpp https://commits.kde.org/digikam/15f3e3b0645612a8c650cbff58f137f664b287a3
Color Management was effectively activated but no "space color" was selected. I started a maintenance process. I will let you know when it will be finish
And you let's CM enabled or no ? I recommend to : 1/ test without CM 2/ test with CM + a valid ICC profile 3/ test with CM + a no valid ICC profile. Gilles Caulier
Test: - without CM - with multi-core unfortunately, it crashes igikam::OpenCVFaceDetector::cascadeResult: detectMultiScale gave () Digikam::OpenCVFaceDetector::verifyFace: Verifying face QRect(228,134 36x36) using cascade 8 Digikam::OpenCVFaceDetector::verifyFace: feature QRectF(0.1,0.4 0.8x0.6) QRect(228,134 36x36) QRect(232,148 29x22) Digikam::OpenCVFaceDetector::cascadeResult: detectMultiScale: image size 29 22 searchIncrement 1.1 grouping 2 flags 0 min size 4 4 Digikam::OpenCVFaceDetector::cascadeResult: detectMultiScale gave () Digikam::DetectionWorker::process: Found 0 faces in "2003-06-28_000000 - Divers ( (001).jpg" QSize(1917, 1242) QSize(1917, 1242) Digikam::FaceUtils::writeUnconfirmedResults: Entry QRect(319,150 164x164)53overlapsQRect(319,150 164x164)603, skipping Digikam::DImg::copy: : return null image! ( false , 0 , 0 ) Digikam::FaceUtils::writeUnconfirmedResults: Entry QRect(314,128 209x209)37overlapsQRect(312,123 223x223)603, skipping Digikam::DImg::copy: : return null image! ( false , 0 , 0 ) [New Thread 0x7fff48ff9700 (LWP 17775)] [Thread 0x7fff48ff9700 (LWP 17744) exited] Thread 102 "Thread (pooled)" received signal SIGSEGV, Segmentation fault. [Switching to Thread 0x7fff497fa700 (LWP 17274)] 0x00007ffff630b50e in QSharedDataPointer<Digikam::MetaEngineData::Private>::operator= (o=..., this=0x38471e0) at ././/include/QtCore/qshareddata.h:99 99 ././/include/QtCore/qshareddata.h: Aucun fichier ou dossier de ce type. (gdb) bt #0 0x00007ffff630b50e in QSharedDataPointer<Digikam::MetaEngineData::Private>::operator= (o=..., this=0x38471e0) at ././/include/QtCore/qshareddata.h:99 #1 Digikam::MetaEngineData::operator= (this=0x38471e0, other=...) at /b/dktemp/digikam-master/core/libs/dmetadata/metaengine_data.cpp:51 #2 0x00007ffff62d72fc in Digikam::DImg::setMetadata (this=<optimized out>, data=...) at /b/dktemp/digikam-master/core/libs/dimg/dimg.cpp:1016 #3 0x00007ffff6180a91 in Digikam::DImgLoader::readMetadata (this=0x7fff497f9880, filePath=...) at /b/dktemp/digikam-master/core/libs/dimg/loaders/dimgloader.cpp:219 #4 0x00007ffff618a10e in Digikam::JPEGLoader::load (this=this@entry=0x7fff497f9880, filePath=..., observer=observer@entry=0x3b0f240) at /b/dktemp/digikam-master/core/libs/dimg/loaders/jpegloader.cpp:92 #5 0x00007ffff62dfb29 in Digikam::DImg::load (this=this@entry=0x3b0f428, filePath=..., loadFlagsInt=loadFlagsInt@entry=63, observer=observer@entry=0x3b0f240, rawDecodingSettings=...) at /b/dktemp/digikam-master/core/libs/dimg/dimg.cpp:430 #6 0x00007ffff62e00a0 in Digikam::DImg::load (this=this@entry=0x3b0f428, filePath=..., observer=observer@entry=0x3b0f240, rawDecodingSettings=...) at /b/dktemp/digikam-master/core/libs/dimg/dimg.cpp:374 #7 0x00007ffff63a353b in Digikam::PreviewLoadingTask::execute (this=0x3b0f230) at /b/dktemp/digikam-master/core/libs/threadimageio/previewtask.cpp:325 #8 0x00007ffff638f145 in Digikam::LoadSaveThread::run (this=0x33d7850) at /b/dktemp/digikam-master/core/libs/threadimageio/loadsavethread.cpp:133 #9 0x00007ffff63d0fce in Digikam::DynamicThread::Private::run (this=0x633fe50) at /b/dktemp/digikam-master/core/libs/threads/dynamicthread.cpp:183 #10 0x000000347b8aa60f in ?? () from /tmp/.mount_digikasSydoJ/usr/lib/libQt5Core.so.5 #11 0x000000347b8ae18a in ?? () from /tmp/.mount_digikasSydoJ/usr/lib/libQt5Core.so.5 #12 0x00007ffff570a494 in start_thread (arg=0x7fff497fa700) at pthread_create.c:333 #13 0x00007fffed3f8acf in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:97
Mathieu, because we see crashes in different components that we can not explain. Can you post the output of "ulimit -a"? Maik
core file size (blocks, -c) 0 data seg size (kbytes, -d) unlimited scheduling priority (-e) 0 file size (blocks, -f) unlimited pending signals (-i) 15130 max locked memory (kbytes, -l) 64 max memory size (kbytes, -m) unlimited open files (-n) 1024 pipe size (512 bytes, -p) 8 POSIX message queues (bytes, -q) 819200 real-time priority (-r) 0 stack size (kbytes, -s) 8192 cpu time (seconds, -t) unlimited max user processes (-u) 15130 virtual memory (kbytes, -v) unlimited file locks (-x) unlimited
Git commit 807847709a3dfc4b8fb90391bc0729839af203ec by Maik Qualmann. Committed on 19/10/2018 at 10:35. Pushed by mqualmann into branch 'master'. try to fix this problem, move image loaders to the heap Related: bug 399923 M +73 -57 core/libs/dimg/dimg.cpp https://commits.kde.org/digikam/807847709a3dfc4b8fb90391bc0729839af203ec
Git commit 83db20a5c25c31500b93ce8732ca6728ebd53b16 by Maik Qualmann. Committed on 19/10/2018 at 16:50. Pushed by mqualmann into branch 'master'. Revert "try to fix this problem, move image loaders to the heap" Related: bug 399923 M +57 -73 core/libs/dimg/dimg.cpp https://commits.kde.org/digikam/83db20a5c25c31500b93ce8732ca6728ebd53b16
Git commit f8d2d5f66532c3695211f06eb09f967ba1248986 by Maik Qualmann. Committed on 19/10/2018 at 19:40. Pushed by mqualmann into branch 'master'. close the QFile manually is better Now the memory usage for face recognition does not increase above 1GB and stays at 600-800KB Related: bug 399923 M +4 -0 core/libs/dimg/loaders/dimgloader.cpp https://commits.kde.org/digikam/f8d2d5f66532c3695211f06eb09f967ba1248986
Git commit b11a1a407f5069b7f47810a49ace08d1ed011e87 by Maik Qualmann. Committed on 20/10/2018 at 16:09. Pushed by mqualmann into branch 'master'. try to fix the crash with undocumented method in Qt Related: bug 399923 M +3 -0 core/libs/dimg/dimg_p.h https://commits.kde.org/digikam/b11a1a407f5069b7f47810a49ace08d1ed011e87
Git commit 4b84ca31a2f1c86fd3e980f093e296807180d129 by Maik Qualmann. Committed on 21/10/2018 at 08:07. Pushed by mqualmann into branch 'master'. try with QMutexLocker in DImg Related: bug 399923 M +36 -1 core/libs/dimg/dimg.cpp M +3 -3 core/libs/dimg/dimg_p.h https://commits.kde.org/digikam/4b84ca31a2f1c86fd3e980f093e296807180d129
Git commit 8e43d83ad9193f59551d95129b4b9b6183f39590 by Maik Qualmann. Committed on 21/10/2018 at 19:35. Pushed by mqualmann into branch 'master'. try to fix a possible VTable problem Related: bug 399923 M +2 -1 core/libs/dimg/filters/icc/icctransformfilter.cpp M +1 -1 core/libs/dimg/filters/icc/icctransformfilter.h M +9 -2 core/libs/dimg/loaders/dimgloaderobserver.h M +16 -6 core/libs/threadimageio/loadsavetask.cpp M +6 -6 core/libs/threadimageio/loadsavetask.h M +2 -1 core/utilities/assistants/expoblending/manager/expoblendingthread.cpp M +2 -1 core/utilities/assistants/panorama/tasks/preprocesstask.cpp M +2 -1 core/utilities/queuemanager/manager/batchtool.cpp https://commits.kde.org/digikam/8e43d83ad9193f59551d95129b4b9b6183f39590
Git commit 985be20fd70563bb3989cbb6670880c27f3babba by Maik Qualmann. Committed on 22/10/2018 at 05:56. Pushed by mqualmann into branch 'master'. add QMutexLocker patch again Related: bug 399923 M +36 -1 core/libs/dimg/dimg.cpp M +3 -0 core/libs/dimg/dimg_p.h https://commits.kde.org/digikam/985be20fd70563bb3989cbb6670880c27f3babba
Git commit bede4dcc3829b24494b4e4733579455452c62775 by Maik Qualmann. Committed on 24/10/2018 at 17:47. Pushed by mqualmann into branch 'master'. try to fix the crash in the preview task Related: bug 399923 M +26 -28 core/libs/threadimageio/previewtask.cpp https://commits.kde.org/digikam/bede4dcc3829b24494b4e4733579455452c62775
Git commit 71fe4107faa82bd992756392e53910897ab4fc09 by Maik Qualmann. Committed on 25/10/2018 at 06:12. Pushed by mqualmann into branch 'master'. try to fix progressInfo crash Related: bug 399923 M +3 -3 core/libs/threadimageio/loadsavetask.cpp M +3 -0 core/libs/threadimageio/loadsavetask.h https://commits.kde.org/digikam/71fe4107faa82bd992756392e53910897ab4fc09
Git commit 132352e8668695fd3ab2718e6184a5e794c64179 by Maik Qualmann. Committed on 27/10/2018 at 18:07. Pushed by mqualmann into branch 'master'. Reorganization DImg loading and caching from the PreviewLoadingTask Now we cache an unprocessed DImg Related: bug 399923 M +167 -213 core/libs/threadimageio/previewtask.cpp https://commits.kde.org/digikam/132352e8668695fd3ab2718e6184a5e794c64179
Mathieu, which CPU has your computer, Intel or AMD? Maik
Mark, Intel(R) Core(TM) i5 CPU M 480 @ 2.67GHz Thanks for all your work !
OK thanks. I guessed it was Intel. You can also look into this bug 399923, it's basically the same bug report. Maik
After 3 weeks of work, i finally completed the compilation of AppImage using Qt 5.11.3 + QWebkit 5.212. New 6.1.0 pre-release AppImage bundle can be found here (64 bits only for the moment) : https://files.kde.org/digikam/ Please check if this bugzilla entry still valid. Thanks in advance Gilles Caulier
This crash was fixed in bug 399923. Maik