<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.kde.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.6"
          urlbase="https://bugs.kde.org/"
          
          maintainer="sysadmin@kde.org"
>

    <bug>
          <bug_id>399923</bug_id>
          
          <creation_ts>2018-10-17 11:58:14 +0000</creation_ts>
          <short_desc>Segmentation fault during face detection</short_desc>
          <delta_ts>2020-01-15 08:20:07 +0000</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>2</classification_id>
          <classification>Applications</classification>
          <product>digikam</product>
          <component>Faces-Detection</component>
          <version>6.0.0</version>
          <rep_platform>Other</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>NOR</priority>
          <bug_severity>crash</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>0</everconfirmed>
          <reporter>timokau</reporter>
          <assigned_to name="Digikam Developers">digikam-bugs-null</assigned_to>
          <cc>brandonkirsch</cc>
    
    <cc>caulier.gilles</cc>
    
    <cc>k</cc>
    
    <cc>lunitic</cc>
    
    <cc>metzpinguin</cc>
    
    <cc>r4c3</cc>
    
    <cc>timokau</cc>
          
          <cf_commitlink></cf_commitlink>
          <cf_versionfixedin>7.0.0</cf_versionfixedin>
          <cf_sentryurl></cf_sentryurl>
          <votes>0</votes>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1794951</commentid>
    <comment_count>0</comment_count>
    <who name="">timokau</who>
    <bug_when>2018-10-17 11:58:14 +0000</bug_when>
    <thetext>SUMMARY

I&apos;m trying to import my pictures into digikam and recognize the faces on them. When running face detection, digikam crashes after some time. I don&apos;t think any particular file is responsible because it also happens when I select different albums. Running it under gdb gives the following backtrace:

&gt; digikam.dimg: &quot;/home/timo/data/pictures/DCIM/OpenCamera/IMG_20180612_160527.jpg&quot;  : JPEG file identified
&gt; digikam.metaengine: Loading image history  &quot;&quot;
&gt; digikam.metaengine: DateTime =&gt; Exif.Photo.DateTimeOriginal =&gt; QDateTime(2018-06-11 20:12:25.000 CEST Qt::TimeSpec(LocalTime))
&gt; digikam.metaengine: DateTime =&gt; Exif.Image.DateTime =&gt; QDateTime(2018-06-11 20:12:25.000 CEST Qt::TimeSpec(LocalTime))
&gt; 
&gt; Thread 46 &quot;Thread (pooled)&quot; received signal SIGSEGV, Segmentation fault.
&gt; [Switching to Thread 0x7fff11b6e700 (LWP 21544)]
&gt; 0x00007ffff625c2f5 in non-virtual thunk to Digikam::LoadingTask::progressInfo(Digikam::DImg const*, float) () from /nix/store/585j5m3calg2iqbda94i6msxincc8mw6-digikam-6.0.0-beta2/lib/libdigikamcore.so.6.0.0
&gt; (gdb) bt
&gt; #0  0x00007ffff625c2f5 in non-virtual thunk to Digikam::LoadingTask::progressInfo(Digikam::DImg const*, float) () from /nix/store/585j5m3calg2iqbda94i6msxincc8mw6-digikam-6.0.0-beta2/lib/libdigikamcore.so.6.0.0
&gt; #1  0x00007ffff600ed25 in Digikam::JPEGLoader::load(QString const&amp;, Digikam::DImgLoaderObserver*) () from /nix/store/585j5m3calg2iqbda94i6msxincc8mw6-digikam-6.0.0-beta2/lib/libdigikamcore.so.6.0.0
&gt; #2  0x00007ffff6188210 in Digikam::DImg::load(QString const&amp;, int, Digikam::DImgLoaderObserver*, Digikam::DRawDecoding const&amp;) ()
&gt;    from /nix/store/585j5m3calg2iqbda94i6msxincc8mw6-digikam-6.0.0-beta2/lib/libdigikamcore.so.6.0.0
&gt; #3  0x00007ffff6261d2c in Digikam::PreviewLoadingTask::execute() () from /nix/store/585j5m3calg2iqbda94i6msxincc8mw6-digikam-6.0.0-beta2/lib/libdigikamcore.so.6.0.0
&gt; #4  0x00007ffff624922d in Digikam::LoadSaveThread::run() () from /nix/store/585j5m3calg2iqbda94i6msxincc8mw6-digikam-6.0.0-beta2/lib/libdigikamcore.so.6.0.0
&gt; #5  0x00007ffff6292b94 in Digikam::DynamicThread::Private::run() () from /nix/store/585j5m3calg2iqbda94i6msxincc8mw6-digikam-6.0.0-beta2/lib/libdigikamcore.so.6.0.0
&gt; #6  0x00007fffe9336602 in ?? () from /nix/store/br6yml05dzhccpaf4zi48vw3iw1xayzg-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #7  0x00007fffe933f12b in ?? () from /nix/store/br6yml05dzhccpaf4zi48vw3iw1xayzg-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #8  0x00007ffff4f9f5a7 in start_thread () from /nix/store/fg4yq8i8wd08xg3fy58l6q73cjy8hjr2-glibc-2.27/lib/libpthread.so.0
&gt; #9  0x00007fffe66d322f in clone () from /nix/store/fg4yq8i8wd08xg3fy58l6q73cjy8hjr2-glibc-2.27/lib/libc.so.6
&gt; (gdb) 



STEPS TO REPRODUCE
Unclear, probably depends on the database and/or the dependency versions.

OBSERVED RESULT
Digikam reproducably segfaults during face detection.


EXPECTED RESULT
Digikam detects the faces.


SOFTWARE VERSIONS
(available in About System)
KDE Plasma Version: Not listed
KDE Frameworks Version: 5.49.0
Qt Version: 5.11.1

ADDITIONAL INFORMATION

I&apos;m using the NixOS package (modified to include debug information). The issue occurs with 6.0.beta2 as well as 5.9.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1795428</commentid>
    <comment_count>1</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2018-10-19 07:35:02 +0000</bug_when>
    <thetext>As a note at the moment, we have the same backtrace in this Bug 397919. I have never been able to reproduce this bug here. I see no problems even after a review of the code. Gilles, how well does face recognition work on OSX? OSX is a good catalyst for stack issues.

Maik</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1795447</commentid>
    <comment_count>2</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2018-10-19 10:36:47 +0000</bug_when>
    <thetext>Git commit 807847709a3dfc4b8fb90391bc0729839af203ec by Maik Qualmann.
Committed on 19/10/2018 at 10:35.
Pushed by mqualmann into branch &apos;master&apos;.

try to fix this problem, move image loaders to the heap
Related: bug 397919

M  +73   -57   core/libs/dimg/dimg.cpp

https://commits.kde.org/digikam/807847709a3dfc4b8fb90391bc0729839af203ec</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1795459</commentid>
    <comment_count>3</comment_count>
    <who name="">caulier.gilles</who>
    <bug_when>2018-10-19 11:58:40 +0000</bug_when>
    <thetext>I never tried Face Engine on OSX. I will do it while this week end.

Gilles</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1795481</commentid>
    <comment_count>4</comment_count>
    <who name="">timokau</who>
    <bug_when>2018-10-19 13:22:05 +0000</bug_when>
    <thetext>Thanks for the attempted fix :)

I built 807847709a3dfc4b8fb90391bc0729839af203ec and re-tried. First I had to delte and rebuild the database because digikam told me the database scheme had changed from 9 to 10. Then I unformunately got what apperas to be the same error, although the regular digikam log preceding it is a bit different:


&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.dimg: &quot;/home/timo/pictures/Telegram/Telegram Images/230130499_15576.jpg&quot;  : JPEG file identified
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.metaengine: Loading image history  &quot;&quot;
&gt; digikam.metaengine: DateTime =&gt; Exif.Photo.DateTimeOriginal =&gt; QDateTime(2017-12-27 19:52:17.000 CET Qt::TimeSpec(LocalTime))
&gt; digikam.metaengine: DateTime =&gt; Exif.Image.DateTime =&gt; QDateTime(2017-12-27 19:52:17.000 CET Qt::TimeSpec(LocalTime))
&gt; digikam.facesengine: detectMultiScale gave  (QRect(21,365 48x48))
&gt; digikam.facesengine: Verifying face  QRect(21,365 48x48)  using cascade  0
&gt; digikam.facesengine: detectMultiScale: image size  128   125  searchIncrement  1.1  grouping  3  flags  0  min size  29   29 
&gt; 
&gt; digikam.facesengine: detectMultiScale gave  ()
&gt; digikam.facesengine: Verifying face  QRect(21,365 48x48)  using cascade  1
&gt; digikam.facesengine: detectMultiScale: image size  128   125  searchIncrement  1.1  grouping  3  flags  0  min size  29   29 
&gt; 
&gt; digikam.facesengine: detectMultiScale gave  ()
&gt; digikam.facesengine: Verifying face  QRect(21,365 48x48)  using cascade  2
&gt; digikam.facesengine: Verifying face  QRect(21,365 48x48)  using cascade  3
&gt; digikam.facesengine: detectMultiScale: image size  128   125  searchIncrement  1.1  grouping  3  flags  0  min size  29   29 
&gt; 
&gt; digikam.facesengine: detectMultiScale gave  ()
&gt; digikam.facesengine: Verifying face  QRect(21,365 48x48)  using cascade  4
&gt; digikam.facesengine: detectMultiScale: image size  128   125  searchIncrement  1.1  grouping  3  flags  0  min size  29   29 
&gt; 
&gt; digikam.facesengine: detectMultiScale gave  ()
&gt; digikam.facesengine: Verifying face  QRect(21,365 48x48)  using cascade  5
&gt; digikam.facesengine: feature  QRectF(0,0 0.6x0.6) QRect(21,365 48x48) QRect(21,365 29x29)
&gt; digikam.facesengine: detectMultiScale: image size  29   29  searchIncrement  1.1  grouping  2  flags  0  min size  5   5 
&gt; 
&gt; digikam.facesengine: detectMultiScale gave  ()
&gt; digikam.facesengine: Verifying face  QRect(21,365 48x48)  using cascade  6
&gt; digikam.facesengine: feature  QRectF(0.4,0 0.6x0.6) QRect(21,365 48x48) QRect(40,365 29x29)
&gt; digikam.facesengine: detectMultiScale: image size  29   29  searchIncrement  1.1  grouping  2  flags  0  min size  5   5 
&gt; 
&gt; digikam.facesengine: detectMultiScale gave  ()
&gt; digikam.facesengine: Verifying face  QRect(21,365 48x48)  using cascade  7
&gt; digikam.facesengine: feature  QRectF(0.2,0.25 0.6x0.6) QRect(21,365 48x48) QRect(31,377 29x29)
&gt; digikam.facesengine: detectMultiScale: image size  29   29  searchIncrement  1.1  grouping  2  flags  0  min size  5   5 
&gt; 
&gt; digikam.facesengine: detectMultiScale gave  ()
&gt; digikam.facesengine: Verifying face  QRect(21,365 48x48)  using cascade  8
&gt; digikam.facesengine: feature  QRectF(0.1,0.4 0.8x0.6) QRect(21,365 48x48) QRect(26,384 38x29)
&gt; digikam.facesengine: detectMultiScale: image size  38   29  searchIncrement  1.1  grouping  2  flags  0  min size  5   5 
&gt; 
&gt; digikam.facesengine: detectMultiScale gave  ()
&gt; digikam.general: Found 0 faces in &quot;223034758_1114063.jpg&quot; QSize(1280, 720) QSize(1280, 720)
&gt; digikam.facesengine: detectMultiScale: image size  800   450  searchIncrement  1.1  grouping  3  flags  1  min size  26   26 
&gt; 
&gt; digikam.facesengine: detectMultiScale gave  ()
&gt; digikam.general: Found 0 faces in &quot;223034787_1150106.jpg&quot; QSize(1280, 720) QSize(1280, 720)
&gt; digikam.facesengine: detectMultiScale: image size  800   533  searchIncrement  1.1  grouping  3  flags  1  min size  25   25 
&gt; 
&gt; 
&gt; Thread 30 &quot;Thread (pooled)&quot; received signal SIGBUS, Bus error.
&gt; [Switching to Thread 0x7fff26ffd700 (LWP 26159)]
&gt; 0x00007ffff5fe5b33 in QMapNode&lt;QString, QVariant&gt;::copy(QMapData&lt;QString, QVariant&gt;*) const () from /nix/store/rccjxs6680jfbylilyp4ria6ryad7mnk-digikam-6.0.0-beta2/lib/libdigikamcore.so.6.0.0
&gt; 
&gt; 
&gt; 
&gt; 
&gt; (gdb) bt
&gt; #0  0x00007ffff5fe5b33 in QMapNode&lt;QString, QVariant&gt;::copy(QMapData&lt;QString, QVariant&gt;*) const () from /nix/store/rccjxs6680jfbylilyp4ria6ryad7mnk-digikam-6.0.0-beta2/lib/libdigikamcore.so.6.0.0
&gt; #1  0x00007ffff5fe5c82 in QMap&lt;QString, QVariant&gt;::insert(QString const&amp;, QVariant const&amp;) () from /nix/store/rccjxs6680jfbylilyp4ria6ryad7mnk-digikam-6.0.0-beta2/lib/libdigikamcore.so.6.0.0
&gt; #2  0x00007ffff5ff68f1 in Digikam::DImgLoader::uniqueHashV2(QString const&amp;, Digikam::DImg const*) () from /nix/store/rccjxs6680jfbylilyp4ria6ryad7mnk-digikam-6.0.0-beta2/lib/libdigikamcore.so.6.0.0
&gt; #3  0x00007ffff5ff6bd6 in Digikam::DImgLoader::createHistoryImageId(QString const&amp;, Digikam::DImg const&amp;, Digikam::DMetadata const&amp;) ()
&gt;    from /nix/store/rccjxs6680jfbylilyp4ria6ryad7mnk-digikam-6.0.0-beta2/lib/libdigikamcore.so.6.0.0
&gt; #4  0x00007ffff5ff70e3 in Digikam::DImgLoader::readMetadata(QString const&amp;, Digikam::DImg::FORMAT) () from /nix/store/rccjxs6680jfbylilyp4ria6ryad7mnk-digikam-6.0.0-beta2/lib/libdigikamcore.so.6.0.0
&gt; #5  0x00007ffff5ffef21 in Digikam::JPEGLoader::load(QString const&amp;, Digikam::DImgLoaderObserver*) () from /nix/store/rccjxs6680jfbylilyp4ria6ryad7mnk-digikam-6.0.0-beta2/lib/libdigikamcore.so.6.0.0
&gt; #6  0x00007ffff617ad1e in Digikam::DImg::load(QString const&amp;, int, Digikam::DImgLoaderObserver*, Digikam::DRawDecoding const&amp;) ()
&gt;    from /nix/store/rccjxs6680jfbylilyp4ria6ryad7mnk-digikam-6.0.0-beta2/lib/libdigikamcore.so.6.0.0
&gt; #7  0x00007ffff625786c in Digikam::PreviewLoadingTask::execute() () from /nix/store/rccjxs6680jfbylilyp4ria6ryad7mnk-digikam-6.0.0-beta2/lib/libdigikamcore.so.6.0.0
&gt; #8  0x00007ffff623ed6d in Digikam::LoadSaveThread::run() () from /nix/store/rccjxs6680jfbylilyp4ria6ryad7mnk-digikam-6.0.0-beta2/lib/libdigikamcore.so.6.0.0
&gt; #9  0x00007ffff6288694 in Digikam::DynamicThread::Private::run() () from /nix/store/rccjxs6680jfbylilyp4ria6ryad7mnk-digikam-6.0.0-beta2/lib/libdigikamcore.so.6.0.0
&gt; #10 0x00007fffe9326602 in ?? () from /nix/store/br6yml05dzhccpaf4zi48vw3iw1xayzg-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #11 0x00007fffe932f12b in ?? () from /nix/store/br6yml05dzhccpaf4zi48vw3iw1xayzg-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #12 0x00007ffff4f8f5a7 in start_thread () from /nix/store/fg4yq8i8wd08xg3fy58l6q73cjy8hjr2-glibc-2.27/lib/libpthread.so.0
&gt; #13 0x00007fffe66c322f in clone () from /nix/store/fg4yq8i8wd08xg3fy58l6q73cjy8hjr2-glibc-2.27/lib/libc.so.6</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1795519</commentid>
    <comment_count>5</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2018-10-19 16:51:09 +0000</bug_when>
    <thetext>Git commit 83db20a5c25c31500b93ce8732ca6728ebd53b16 by Maik Qualmann.
Committed on 19/10/2018 at 16:50.
Pushed by mqualmann into branch &apos;master&apos;.

Revert &quot;try to fix this problem, move image loaders to the heap&quot;
Related: bug 397919

M  +57   -73   core/libs/dimg/dimg.cpp

https://commits.kde.org/digikam/83db20a5c25c31500b93ce8732ca6728ebd53b16</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1795543</commentid>
    <comment_count>6</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2018-10-19 18:33:32 +0000</bug_when>
    <thetext>We also know the last bugtrace. Simply attaching to a QMap crashes. It looks to me like there is no free memory left. Can you observe the memory usage during face detection?

Maik</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1795555</commentid>
    <comment_count>7</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2018-10-19 19:41:44 +0000</bug_when>
    <thetext>Git commit f8d2d5f66532c3695211f06eb09f967ba1248986 by Maik Qualmann.
Committed on 19/10/2018 at 19:40.
Pushed by mqualmann into branch &apos;master&apos;.

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 397919

M  +4    -0    core/libs/dimg/loaders/dimgloader.cpp

https://commits.kde.org/digikam/f8d2d5f66532c3695211f06eb09f967ba1248986</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1795586</commentid>
    <comment_count>8</comment_count>
    <who name="">timokau</who>
    <bug_when>2018-10-19 23:24:16 +0000</bug_when>
    <thetext>I don&apos;t think running out of memory is the issue. I have 8G RAM and 8G swap. I built f8d2d5f66532c3695211f06eb09f967ba1248986 and ran `free` every .5s until the crash (it did crash). The RAM did get close to used up (in the 7Gs) some times, but there was always plenty of swap left. The highest usage I saw was 7G RAM and 3G swap. Memory usage went down towards the end though and at the time of the crash it looked like this:

&gt;               total        used        free      shared  buff/cache   available
&gt; Mem:        8057628     4580060      197368      178532     3280200     2994156
&gt; Swap:       8388604     3202384     5186220</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1795642</commentid>
    <comment_count>9</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2018-10-20 06:54:29 +0000</bug_when>
    <thetext>Do I understand correctly that digiKam consumes up to 7G of memory? Do you use face detection and recognition together?

Maik</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1795714</commentid>
    <comment_count>10</comment_count>
      <attachid>115778</attachid>
    <who name="">timokau</who>
    <bug_when>2018-10-20 11:38:13 +0000</bug_when>
    <thetext>Created attachment 115778
memory consumed during face detection until crash

No, there were other programs running too. I ran a scan (&quot;Detect face&quot;, &quot;Scan again and merge results&quot;, 80% accuracy, *not* &quot;Work on all processor cores&quot;) under `memory_profiler` and it peaks at 3G (see attachment).
I was running with 100% accuracy before so it might have used more then.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1795777</commentid>
    <comment_count>11</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2018-10-20 16:10:59 +0000</bug_when>
    <thetext>Git commit b11a1a407f5069b7f47810a49ace08d1ed011e87 by Maik Qualmann.
Committed on 20/10/2018 at 16:09.
Pushed by mqualmann into branch &apos;master&apos;.

try to fix the crash with undocumented method in Qt
Related: bug 397919

M  +3    -0    core/libs/dimg/dimg_p.h

https://commits.kde.org/digikam/b11a1a407f5069b7f47810a49ace08d1ed011e87</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1795840</commentid>
    <comment_count>12</comment_count>
    <who name="">timokau</who>
    <bug_when>2018-10-20 22:13:30 +0000</bug_when>
    <thetext>Unfortunately b11a1a407f5069b7f47810a49ace08d1ed011e87 still crashes, this time with the backtrace

&gt; digikam.metaengine: Orientation =&gt; Exif.Image.Orientation =&gt; 1
&gt; digikam.dimg: &quot;/home/timo/pictures/Telegram/Telegram Images/246926317_18149.jpg&quot;  : JPEG file identified
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.metaengine: Loading image history  &quot;&quot;
&gt; digikam.metaengine: DateTime =&gt; Exif.Photo.DateTimeOriginal =&gt; QDateTime(2018-06-21 22:00:59.000 CEST Qt::TimeSpec(LocalTime))
&gt; digikam.metaengine: DateTime =&gt; Exif.Image.DateTime =&gt; QDateTime(2018-06-21 22:00:59.000 CEST Qt::TimeSpec(LocalTime))
&gt; digikam.facesengine: detectMultiScale gave  ()
&gt; digikam.general: Found 0 faces in &quot;246923134_270485.jpg&quot; QSize(720, 1280) QSize(720, 1280)
&gt; digikam.facesengine: detectMultiScale: image size  800   600  searchIncrement  1.1  grouping  3  flags  1  min size  26   26 
&gt; 
&gt; digikam.dimg: &quot;/home/timo/pictures/Pictures/Abitur 2015/Abiball/Professionell/Fotobox/dsc_0230.jpg&quot;  : JPEG file identified
&gt; 
&gt; Thread 235 &quot;Thread (pooled)&quot; received signal SIGSEGV, Segmentation fault.
&gt; [Switching to Thread 0x7fff257fa700 (LWP 21997)]
&gt; 0x00007ffff5fd80ba in QMap&lt;QString, QVariant&gt;::insert(QString const&amp;, QVariant const&amp;) ()
&gt;    from /nix/store/8nnk56ip4xpjzdqfbvz0r8n7509yr2hn-digikam-6.0.0-beta2/lib/libdigikamcore.so.6.0.0
&gt; (gdb) bt
&gt; #0  0x00007ffff5fd80ba in QMap&lt;QString, QVariant&gt;::insert(QString const&amp;, QVariant const&amp;) ()
&gt;    from /nix/store/8nnk56ip4xpjzdqfbvz0r8n7509yr2hn-digikam-6.0.0-beta2/lib/libdigikamcore.so.6.0.0
&gt; #1  0x00007ffff623ebf2 in Digikam::LoadSaveThread::exifRotate(Digikam::DImg&amp;, QString const&amp;) ()
&gt;    from /nix/store/8nnk56ip4xpjzdqfbvz0r8n7509yr2hn-digikam-6.0.0-beta2/lib/libdigikamcore.so.6.0.0
&gt; #2  0x00007ffff6256c9c in Digikam::PreviewLoadingTask::execute() ()
&gt;    from /nix/store/8nnk56ip4xpjzdqfbvz0r8n7509yr2hn-digikam-6.0.0-beta2/lib/libdigikamcore.so.6.0.0
&gt; #3  0x00007ffff623ddad in Digikam::LoadSaveThread::run() ()
&gt;    from /nix/store/8nnk56ip4xpjzdqfbvz0r8n7509yr2hn-digikam-6.0.0-beta2/lib/libdigikamcore.so.6.0.0
&gt; #4  0x00007ffff62876f4 in Digikam::DynamicThread::Private::run() ()
&gt;    from /nix/store/8nnk56ip4xpjzdqfbvz0r8n7509yr2hn-digikam-6.0.0-beta2/lib/libdigikamcore.so.6.0.0
&gt; #5  0x00007fffe9318602 in ?? () from /nix/store/br6yml05dzhccpaf4zi48vw3iw1xayzg-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #6  0x00007fffe932112b in ?? () from /nix/store/br6yml05dzhccpaf4zi48vw3iw1xayzg-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #7  0x00007ffff4f815a7 in start_thread () from /nix/store/fg4yq8i8wd08xg3fy58l6q73cjy8hjr2-glibc-2.27/lib/libpthread.so.0
&gt; #8  0x00007fffe66b522f in clone () from /nix/store/fg4yq8i8wd08xg3fy58l6q73cjy8hjr2-glibc-2.27/lib/libc.so.6

I tried to reproduce this with a public set of images[0] but I could not. That might be because the set is much smaller than my usual (586M vs 39G, although the 39G contain several videos) but the face detection in the public set still took ~3h to finish while it usually crashes within an hour when I run it on my private set.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1797186</commentid>
    <comment_count>13</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2018-10-21 08:08:39 +0000</bug_when>
    <thetext>Git commit 4b84ca31a2f1c86fd3e980f093e296807180d129 by Maik Qualmann.
Committed on 21/10/2018 at 08:07.
Pushed by mqualmann into branch &apos;master&apos;.

try with QMutexLocker in DImg
Related: bug 397919

M  +36   -1    core/libs/dimg/dimg.cpp
M  +3    -3    core/libs/dimg/dimg_p.h

https://commits.kde.org/digikam/4b84ca31a2f1c86fd3e980f093e296807180d129</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1797203</commentid>
    <comment_count>14</comment_count>
    <who name="">timokau</who>
    <bug_when>2018-10-21 10:27:53 +0000</bug_when>
    <thetext>Unfortunately that didn&apos;t fix it either:

&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.facesengine: detectMultiScale gave  ()
&gt; digikam.general: Found 0 faces in &quot;2_5309997771762172030.png&quot; QSize(1236, 781) QSize(1236, 781)
&gt; digikam.facesengine: detectMultiScale: image size  475   800  searchIncrement  1.1  grouping  3  flags  1  min size  26   26 
&gt; 
&gt; digikam.dimg: Cannot open workspace color profile &quot;/nix/store/s4ih9rqmb33lgavf2027jjg36sy9ydvs-digikam-5.9.0/share/digikam/profiles/srgb-d65.icm&quot;
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.dimg: &quot;/home/timo/pictures/Telegram/Telegram Documents/2_5389028614572343387.gif&quot;  : QIMAGE file identified
&gt; digikam.facesengine: detectMultiScale gave  ()
&gt; digikam.general: Found 0 faces in &quot;2_5312030137401737360.png&quot; QSize(603, 1014) QSize(603, 1014)
&gt; digikam.facesengine: detectMultiScale: image size  800   450  searchIncrement  1.1  grouping  3  flags  1  min size  26   26 
&gt; 
&gt; digikam.facesengine: detectMultiScale gave  ()
&gt; digikam.general: Found 0 faces in &quot;2_5343993975508304200.png&quot; QSize(1600, 900) QSize(1600, 900)
&gt; 
&gt; Thread 87 &quot;Thread (pooled)&quot; received signal SIGSEGV, Segmentation fault.
&gt; [Switching to Thread 0x7fff3d7af700 (LWP 1596)]
&gt; 0x00000000035b8268 in ?? ()
&gt; (gdb) bt
&gt; #0  0x00000000035b8268 in ?? ()
&gt; #1  0x00007ffff62506db in non-virtual thunk to Digikam::LoadingTask::progressInfo(Digikam::DImg const*, float) ()
&gt;    from /nix/store/b8zcx52qmn06i991vxa57dkzdivlg11f-digikam-6.0.0-beta2/lib/libdigikamcore.so.6.0.0
&gt; #2  0x00007ffff5ff00c5 in Digikam::JPEGLoader::load(QString const&amp;, Digikam::DImgLoaderObserver*) ()
&gt;    from /nix/store/b8zcx52qmn06i991vxa57dkzdivlg11f-digikam-6.0.0-beta2/lib/libdigikamcore.so.6.0.0
&gt; #3  0x00007ffff616a250 in Digikam::DImg::load(QString const&amp;, int, Digikam::DImgLoaderObserver*, Digikam::DRawDecoding const&amp;) ()
&gt;    from /nix/store/b8zcx52qmn06i991vxa57dkzdivlg11f-digikam-6.0.0-beta2/lib/libdigikamcore.so.6.0.0
&gt; #4  0x00007ffff625610c in Digikam::PreviewLoadingTask::execute() ()
&gt;    from /nix/store/b8zcx52qmn06i991vxa57dkzdivlg11f-digikam-6.0.0-beta2/lib/libdigikamcore.so.6.0.0
&gt; #5  0x00007ffff623d4bd in Digikam::LoadSaveThread::run() ()
&gt;    from /nix/store/b8zcx52qmn06i991vxa57dkzdivlg11f-digikam-6.0.0-beta2/lib/libdigikamcore.so.6.0.0
&gt; #6  0x00007ffff6286f54 in Digikam::DynamicThread::Private::run() ()
&gt;    from /nix/store/b8zcx52qmn06i991vxa57dkzdivlg11f-digikam-6.0.0-beta2/lib/libdigikamcore.so.6.0.0
&gt; #7  0x00007fffe9314602 in ?? () from /nix/store/br6yml05dzhccpaf4zi48vw3iw1xayzg-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #8  0x00007fffe931d12b in ?? () from /nix/store/br6yml05dzhccpaf4zi48vw3iw1xayzg-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #9  0x00007ffff4f7d5a7 in start_thread () from /nix/store/fg4yq8i8wd08xg3fy58l6q73cjy8hjr2-glibc-2.27/lib/libpthread.so.0
&gt; #10 0x00007fffe66b122f in clone () from /nix/store/fg4yq8i8wd08xg3fy58l6q73cjy8hjr2-glibc-2.27/lib/libc.so.6</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1797204</commentid>
    <comment_count>15</comment_count>
    <who name="">timokau</who>
    <bug_when>2018-10-21 10:30:42 +0000</bug_when>
    <thetext>The color profile error seems to be an unrelated issue: digikam saves the paths of `MonitorProfileFile` and `WorkProfileFile` in `digikamrc` but that old version does no longer exist and the paths aren&apos;t updated.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1797226</commentid>
    <comment_count>16</comment_count>
    <who name="">caulier.gilles</who>
    <bug_when>2018-10-21 11:55:42 +0000</bug_when>
    <thetext>I think this problem is due to a race condition, undetectable with valgrind as speed is reduced a lots.

This can be relevant of thread serialization used in face management. For me this code that I review a split in dedicated source code is too complicated.

Marcel has written all this code with a student when face detection have been introduced and lets as well for a while

Another negative point is opencast. This library is a large puzzle and, as I can see unit test code for image quality sorter, with few line of code, valgrind report a lots of memory corruption

In project/script/ there is a bootstrap script to compile opencast with the minimum requirements for digikam. With this kind of env. digikam do not crash here less time with opencv but it,s not perfect.

So with this multiple error prone, face management can become instable as we don’t control how opencv is compiled on target computer.

Some way to progress in investigations:

1/ write one unit test to call face management with all options available in digikam
This will simplify the test but as low level code is complicated, this kind of test can only confirm the bug without to isolate the source of the problem.

2/ as all classes as well isolated in face management, rewrite the thread serialization can be better. Sure the performance will decrease, but the gain over code complexity will be better to understand and to maintain. Typically, an ActionJob  to parse image in a separated thread to detect faces, one other to perform identification, and one other to process database requests through a cache mechanism to not bloat with multiple queries.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1797227</commentid>
    <comment_count>17</comment_count>
    <who name="">caulier.gilles</who>
    <bug_when>2018-10-21 11:57:02 +0000</bug_when>
    <thetext>Oups, in my previous comment : opencast —&gt; opencv</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1797291</commentid>
    <comment_count>18</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2018-10-21 15:59:38 +0000</bug_when>
    <thetext>Hmm... I think we have 2 problems here, once the crash in QMap. There are a few entries on the web that deal with it. QMap/QHash is not thread save and must be locked with QMutexLocker. The other crash is in LoadingTask::progressInfo (), if gdb does not take us the wrong way here, it&apos;s very strange. My thanks go to timokau for testing the latest git/master version.

Maik</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1797373</commentid>
    <comment_count>19</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2018-10-21 19:37:06 +0000</bug_when>
    <thetext>Git commit 8e43d83ad9193f59551d95129b4b9b6183f39590 by Maik Qualmann.
Committed on 21/10/2018 at 19:35.
Pushed by mqualmann into branch &apos;master&apos;.

try to fix a possible VTable problem
Related: bug 397919

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</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1797376</commentid>
    <comment_count>20</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2018-10-21 19:42:07 +0000</bug_when>
    <thetext>The fact is that this function should never be called in this context:

Digikam::LoadingTask::progressInfo(Digikam::DImg const*, float)

Only this overloaded function:

Digikam::SharedLoadingTask::progressInfo(Digikam::DImg const*, float)

Maik</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1797407</commentid>
    <comment_count>21</comment_count>
    <who name="">timokau</who>
    <bug_when>2018-10-21 21:53:03 +0000</bug_when>
    <thetext>Experimenting a bit I can remove a lot of pictures while still reliably getting it to crash (in 5 minutes or less), but I can&apos;t isolate a set of pictures that definitely causes a crash.

@caulier.gilles I&apos;ve re-build opencv with the same cmake flags the &quot;bootstrap&quot; uses just to be sure, that didn&apos;t fix it.

@Maik thank you for investing your time to fix this bug, the very least I can do is test the fixes. Unfortunately no luck with 8e43d83ad9193f59551d95129b4b9b6183f39590 either:

&gt; digikam.facesengine: detectMultiScale gave  ()
&gt; digikam.general: Found 0 faces in &quot;IMG-20160721-WA0000.jpg&quot; QSize(720, 1280) QSize(720, 1280)
&gt; digikam.facesengine: detectMultiScale: image size  450   800  searchIncrement  1.1  grouping  3  flags  1  min size  26   26 
&gt; 
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.dimg: &quot;/home/timo/pictures/WhatsApp Images/IMG-20160724-WA0004.jpg&quot;  : JPEG file identified
&gt; digikam.metaengine: Loading image history  &quot;&quot;
&gt; digikam.metaengine: DateTime =&gt; Exif.Photo.DateTimeOriginal =&gt; QDateTime(2017-05-14 23:11:25.000 CEST Qt::TimeSpec(LocalTime))
&gt; digikam.metaengine: DateTime =&gt; Exif.Image.DateTime =&gt; QDateTime(2017-05-14 23:11:25.000 CEST Qt::TimeSpec(LocalTime))
&gt; 
&gt; Thread 44 &quot;Thread (pooled)&quot; received signal SIGBUS, Bus error.
&gt; [Switching to Thread 0x7fff14a7b700 (LWP 9485)]
&gt; 0x00007ffff5fd5063 in QMapNode&lt;QString, QVariant&gt;::copy(QMapData&lt;QString, QVariant&gt;*) const () from /nix/store/q3kr6shz92ybg9dkqxd9k79cm0mq5nfw-digikam-6.0.0-beta2/lib/libdigikamcore.so.6.0.0
&gt; (gdb) bt
&gt; #0  0x00007ffff5fd5063 in QMapNode&lt;QString, QVariant&gt;::copy(QMapData&lt;QString, QVariant&gt;*) const () from /nix/store/q3kr6shz92ybg9dkqxd9k79cm0mq5nfw-digikam-6.0.0-beta2/lib/libdigikamcore.so.6.0.0
&gt; #1  0x00007ffff5fd51b2 in QMap&lt;QString, QVariant&gt;::insert(QString const&amp;, QVariant const&amp;) () from /nix/store/q3kr6shz92ybg9dkqxd9k79cm0mq5nfw-digikam-6.0.0-beta2/lib/libdigikamcore.so.6.0.0
&gt; #2  0x00007ffff623e862 in Digikam::LoadSaveThread::exifRotate(Digikam::DImg&amp;, QString const&amp;) () from /nix/store/q3kr6shz92ybg9dkqxd9k79cm0mq5nfw-digikam-6.0.0-beta2/lib/libdigikamcore.so.6.0.0
&gt; #3  0x00007ffff6256a5c in Digikam::PreviewLoadingTask::execute() () from /nix/store/q3kr6shz92ybg9dkqxd9k79cm0mq5nfw-digikam-6.0.0-beta2/lib/libdigikamcore.so.6.0.0
&gt; #4  0x00007ffff623da1d in Digikam::LoadSaveThread::run() () from /nix/store/q3kr6shz92ybg9dkqxd9k79cm0mq5nfw-digikam-6.0.0-beta2/lib/libdigikamcore.so.6.0.0
&gt; #5  0x00007ffff62874b4 in Digikam::DynamicThread::Private::run() () from /nix/store/q3kr6shz92ybg9dkqxd9k79cm0mq5nfw-digikam-6.0.0-beta2/lib/libdigikamcore.so.6.0.0
&gt; #6  0x00007fffe9315602 in ?? () from /nix/store/br6yml05dzhccpaf4zi48vw3iw1xayzg-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #7  0x00007fffe931e12b in ?? () from /nix/store/br6yml05dzhccpaf4zi48vw3iw1xayzg-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #8  0x00007ffff4f7e5a7 in start_thread () from /nix/store/fg4yq8i8wd08xg3fy58l6q73cjy8hjr2-glibc-2.27/lib/libpthread.so.0
&gt; #9  0x00007fffe67e022f in clone () from /nix/store/fg4yq8i8wd08xg3fy58l6q73cjy8hjr2-glibc-2.27/lib/libc.so.6
&gt; (gdb) 


Is there anything else I can try to investigate this?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1797452</commentid>
    <comment_count>22</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2018-10-22 05:51:21 +0000</bug_when>
    <thetext>Ok, this is the crash in QMap again. I&apos;ll add the QMutexLocker patch again.

Maik</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1797453</commentid>
    <comment_count>23</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2018-10-22 05:57:10 +0000</bug_when>
    <thetext>Git commit 985be20fd70563bb3989cbb6670880c27f3babba by Maik Qualmann.
Committed on 22/10/2018 at 05:56.
Pushed by mqualmann into branch &apos;master&apos;.

add QMutexLocker patch again
Related: bug 397919

M  +36   -1    core/libs/dimg/dimg.cpp
M  +3    -0    core/libs/dimg/dimg_p.h

https://commits.kde.org/digikam/985be20fd70563bb3989cbb6670880c27f3babba</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1797490</commentid>
    <comment_count>24</comment_count>
    <who name="">timokau</who>
    <bug_when>2018-10-22 09:46:27 +0000</bug_when>
    <thetext>I tried to sample multiple segfaults this time, in case it helps. I feel like it does crash less often and I couldn&apos;t reproduce the QMap crash again, so maybe at least that is fixed by the Mutex. I still got these however:

&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.dimg: &quot;/home/timo/pictures/WhatsApp Images/IMG-20150924-WA0001.jpeg&quot;  : JPEG file identified
&gt; digikam.metaengine: Loading image history  &quot;&quot;
&gt; digikam.metaengine: DateTime =&gt; Exif.Photo.DateTimeOriginal =&gt; QDateTime(2015-09-24 20:13:57.000 CEST Qt::TimeSpec(LocalTime))
&gt; digikam.metaengine: DateTime =&gt; Exif.Image.DateTime =&gt; QDateTime(2015-09-24 20:13:57.000 CEST Qt::TimeSpec(LocalTime))
&gt; digikam.facesengine: detectMultiScale gave  ()
&gt; digikam.general: Found 0 faces in &quot;IMG-20150902-WA0001.jpg&quot; QSize(1600, 1200) QSize(1600, 1200)
&gt; digikam.facesengine: detectMultiScale: image size  600   800  searchIncrement  1.1  grouping  3  flags  1  min size  26   26 
&gt; 
&gt; digikam.metaengine: Exif color-space tag is sRGB. Using default sRGB ICC profile.
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; 
&gt; Thread 40 &quot;Thread (pooled)&quot; received signal SIGSEGV, Segmentation fault.
&gt; [Switching to Thread 0x7fff311fe700 (LWP 22008)]
&gt; 0x00007fffe676e311 in free () from /nix/store/fg4yq8i8wd08xg3fy58l6q73cjy8hjr2-glibc-2.27/lib/libc.so.6
&gt; (gdb) bt
&gt; #0  0x00007fffe676e311 in free () from /nix/store/fg4yq8i8wd08xg3fy58l6q73cjy8hjr2-glibc-2.27/lib/libc.so.6
&gt; #1  0x00007ffff6165415 in Digikam::DImg::~DImg() () from /nix/store/d046363bhpl5lf8rn7hi30hd9m59cw50-digikam-6.0.0-beta2/lib/libdigikamcore.so.6.0.0
&gt; #2  0x00007ffff6076adb in Digikam::IccManager::~IccManager() () from /nix/store/d046363bhpl5lf8rn7hi30hd9m59cw50-digikam-6.0.0-beta2/lib/libdigikamcore.so.6.0.0
&gt; #3  0x00007ffff62529ae in Digikam::SharedLoadingTask::postProcess() () from /nix/store/d046363bhpl5lf8rn7hi30hd9m59cw50-digikam-6.0.0-beta2/lib/libdigikamcore.so.6.0.0
&gt; #4  0x00007ffff6255d85 in Digikam::PreviewLoadingTask::execute() () from /nix/store/d046363bhpl5lf8rn7hi30hd9m59cw50-digikam-6.0.0-beta2/lib/libdigikamcore.so.6.0.0
&gt; #5  0x00007ffff623d4bd in Digikam::LoadSaveThread::run() () from /nix/store/d046363bhpl5lf8rn7hi30hd9m59cw50-digikam-6.0.0-beta2/lib/libdigikamcore.so.6.0.0
&gt; #6  0x00007ffff6286f54 in Digikam::DynamicThread::Private::run() () from /nix/store/d046363bhpl5lf8rn7hi30hd9m59cw50-digikam-6.0.0-beta2/lib/libdigikamcore.so.6.0.0
&gt; #7  0x00007fffe9314602 in ?? () from /nix/store/br6yml05dzhccpaf4zi48vw3iw1xayzg-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #8  0x00007fffe931d12b in ?? () from /nix/store/br6yml05dzhccpaf4zi48vw3iw1xayzg-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #9  0x00007ffff4f7d5a7 in start_thread () from /nix/store/fg4yq8i8wd08xg3fy58l6q73cjy8hjr2-glibc-2.27/lib/libpthread.so.0
&gt; #10 0x00007fffe67df22f in clone () from /nix/store/fg4yq8i8wd08xg3fy58l6q73cjy8hjr2-glibc-2.27/lib/libc.so.6


&gt; [New Thread 0x7fff148f9700 (LWP 27765)]
&gt; digikam.general: Found 0 faces in &quot;IMG-20150724-WA0083.jpg&quot; QSize(1032, 581) QSize(1032, 581)
&gt; digikam.dimg: &quot;/home/timo/pictures/WhatsApp Images/IMG-20150725-WA0008.jpg&quot;  : JPEG file identified
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.metaengine: Loading image history  &quot;&quot;
&gt; digikam.metaengine: DateTime =&gt; Exif.Photo.DateTimeOriginal =&gt; QDateTime(2017-05-14 23:09:27.000 CEST Qt::TimeSpec(LocalTime))
&gt; digikam.metaengine: DateTime =&gt; Exif.Image.DateTime =&gt; QDateTime(2017-05-14 23:09:27.000 CEST Qt::TimeSpec(LocalTime))
&gt; digikam.facesengine: detectMultiScale: image size  450   800  searchIncrement  1.1  grouping  3  flags  1  min size  26   26 
&gt; 
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; 
&gt; Thread 40 &quot;Thread (pooled)&quot; received signal SIGSEGV, Segmentation fault.
&gt; [Switching to Thread 0x7fff177fe700 (LWP 27673)]
&gt; 0x00007ffff6255d82 in Digikam::PreviewLoadingTask::execute() () from /nix/store/d046363bhpl5lf8rn7hi30hd9m59cw50-digikam-6.0.0-beta2/lib/libdigikamcore.so.6.0.0
&gt; (gdb) bt
&gt; #0  0x00007ffff6255d82 in Digikam::PreviewLoadingTask::execute() () from /nix/store/d046363bhpl5lf8rn7hi30hd9m59cw50-digikam-6.0.0-beta2/lib/libdigikamcore.so.6.0.0
&gt; #1  0x00007ffff623d4bd in Digikam::LoadSaveThread::run() () from /nix/store/d046363bhpl5lf8rn7hi30hd9m59cw50-digikam-6.0.0-beta2/lib/libdigikamcore.so.6.0.0
&gt; #2  0x00007ffff6286f54 in Digikam::DynamicThread::Private::run() () from /nix/store/d046363bhpl5lf8rn7hi30hd9m59cw50-digikam-6.0.0-beta2/lib/libdigikamcore.so.6.0.0
&gt; #3  0x00007fffe9314602 in ?? () from /nix/store/br6yml05dzhccpaf4zi48vw3iw1xayzg-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #4  0x00007fffe931d12b in ?? () from /nix/store/br6yml05dzhccpaf4zi48vw3iw1xayzg-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #5  0x00007ffff4f7d5a7 in start_thread () from /nix/store/fg4yq8i8wd08xg3fy58l6q73cjy8hjr2-glibc-2.27/lib/libpthread.so.0
&gt; #6  0x00007fffe67df22f in clone () from /nix/store/fg4yq8i8wd08xg3fy58l6q73cjy8hjr2-glibc-2.27/lib/libc.so.6


&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.dimg: &quot;/home/timo/Pictures/WhatsApp Images/IMG-20150814-WA0001.jpg&quot;  : JPEG file identified
&gt; digikam.metaengine: Loading image history  &quot;&quot;
&gt; digikam.metaengine: DateTime =&gt; Exif.Photo.DateTimeOriginal =&gt; QDateTime(2017-05-14 23:09:35.000 CEST Qt::TimeSpec(LocalTime))
&gt; digikam.metaengine: DateTime =&gt; Exif.Image.DateTime =&gt; QDateTime(2017-05-14 23:09:35.000 CEST Qt::TimeSpec(LocalTime))
&gt; 
&gt; Thread 29 &quot;Thread (pooled)&quot; received signal SIGSEGV, Segmentation fault.
&gt; [Switching to Thread 0x7fff3c8bf700 (LWP 31673)]
&gt; 0x00007fffe930ea72 in ?? () from /nix/store/br6yml05dzhccpaf4zi48vw3iw1xayzg-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; (gdb) bt
&gt; #0  0x00007fffe930ea72 in ?? () from /nix/store/br6yml05dzhccpaf4zi48vw3iw1xayzg-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #1  0x00007ffff6166c67 in Digikam::DImg::setAttribute(QString const&amp;, QVariant const&amp;) () from /nix/store/d046363bhpl5lf8rn7hi30hd9m59cw50-digikam-6.0.0-beta2/lib/libdigikamcore.so.6.0.0
&gt; #2  0x00007ffff623e302 in Digikam::LoadSaveThread::exifRotate(Digikam::DImg&amp;, QString const&amp;) () from /nix/store/d046363bhpl5lf8rn7hi30hd9m59cw50-digikam-6.0.0-beta2/lib/libdigikamcore.so.6.0.0
&gt; #3  0x00007ffff62564fc in Digikam::PreviewLoadingTask::execute() () from /nix/store/d046363bhpl5lf8rn7hi30hd9m59cw50-digikam-6.0.0-beta2/lib/libdigikamcore.so.6.0.0
&gt; #4  0x00007ffff623d4bd in Digikam::LoadSaveThread::run() () from /nix/store/d046363bhpl5lf8rn7hi30hd9m59cw50-digikam-6.0.0-beta2/lib/libdigikamcore.so.6.0.0
&gt; #5  0x00007ffff6286f54 in Digikam::DynamicThread::Private::run() () from /nix/store/d046363bhpl5lf8rn7hi30hd9m59cw50-digikam-6.0.0-beta2/lib/libdigikamcore.so.6.0.0
&gt; #6  0x00007fffe9314602 in ?? () from /nix/store/br6yml05dzhccpaf4zi48vw3iw1xayzg-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #7  0x00007fffe931d12b in ?? () from /nix/store/br6yml05dzhccpaf4zi48vw3iw1xayzg-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #8  0x00007ffff4f7d5a7 in start_thread () from /nix/store/fg4yq8i8wd08xg3fy58l6q73cjy8hjr2-glibc-2.27/lib/libpthread.so.0
&gt; #9  0x00007fffe67df22f in clone () from /nix/store/fg4yq8i8wd08xg3fy58l6q73cjy8hjr2-glibc-2.27/lib/libc.so.6</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1797525</commentid>
    <comment_count>25</comment_count>
    <who name="">caulier.gilles</who>
    <bug_when>2018-10-22 13:00:25 +0000</bug_when>
    <thetext>All your last backtrace do not provide a suitable trace. Did you compile digiKam with debug symbols ? It&apos;s a option from cmake to pass at configuration stage. The bootstrap.sh as this option enabled at line #73.

Gilles Caulier</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1797583</commentid>
    <comment_count>26</comment_count>
    <who name="">timokau</who>
    <bug_when>2018-10-22 18:56:21 +0000</bug_when>
    <thetext>Yes I&apos;m passing `-DCMAKE_BUILD_TYPE=debugfull` as I&apos;ve seen in some instructions. The boostrap script instead only passes `-DCMAKE_BUILD_TYPE=debug`, is `debugfull` incorrect?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1797584</commentid>
    <comment_count>27</comment_count>
    <who name="">timokau</who>
    <bug_when>2018-10-22 19:08:43 +0000</bug_when>
    <thetext>Why are the traces not suitable?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1797608</commentid>
    <comment_count>28</comment_count>
    <who name="">caulier.gilles</who>
    <bug_when>2018-10-22 22:06:44 +0000</bug_when>
    <thetext>&quot;debug&quot; do the stuff here.

backtrace are not suitable because there is not source code lines where the debugger list the function calls until the crash, at least in libdigikam.so.

Gilles Caulier</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1797710</commentid>
    <comment_count>29</comment_count>
    <who name="">timokau</who>
    <bug_when>2018-10-23 10:32:32 +0000</bug_when>
    <thetext>`-DCMAKE_BUILD_TYPE=debug` has the same result. I got the QMap segfault again:

&gt; digikam.metaengine: Exif color-space tag is sRGB. Using default sRGB ICC profile.
&gt; digikam.dimg: &quot;/home/timo/Pictures/Pictures/Abitur 2015/Abiball/Professionell/Fotobox/dsc_0347.jpg&quot;  : JPEG file identified
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.metaengine: Orientation =&gt; Exif.Image.Orientation =&gt; 1
&gt; digikam.dimg: &quot;/home/timo/Pictures/Pictures/Private Bilder/Klassenfotos/Masken 2006 Klasse 5/IMG_1416.JPG&quot;  : JPEG file identified
&gt; digikam.metaengine: Loading image history  &quot;&quot;
&gt; digikam.metaengine: DateTime =&gt; Exif.Photo.DateTimeOriginal =&gt; QDateTime(2007-05-30 19:33:25.000 CEST Qt::TimeSpec(LocalTime))
&gt; digikam.metaengine: DateTime =&gt; Exif.Photo.DateTimeDigitized =&gt; QDateTime(2007-05-30 19:33:25.000 CEST Qt::TimeSpec(LocalTime))
&gt; digikam.dimg: &quot;/home/timo/Pictures/Pictures/Abitur 2015/Abiball/Professionell/Fotobox/dsc_0195.jpg&quot;  : JPEG file identified
&gt; digikam.facesengine: detectMultiScale gave  ()
&gt; digikam.general: Found 0 faces in &quot;IMG_1411.JPG&quot; QSize(1152, 1728) QSize(1152, 1728)
&gt; digikam.metaengine: Exif color-space tag is sRGB. Using default sRGB ICC profile.
&gt; digikam.facesengine: detectMultiScale: image size  533   800  searchIncrement  1.1  grouping  3  flags  1  min size  26   26 
&gt; 
&gt; digikam.facesengine: detectMultiScale gave  ()
&gt; digikam.general: Found 0 faces in &quot;IMG_1412.JPG&quot; QSize(1152, 1728) QSize(1152, 1728)
&gt; digikam.facesengine: detectMultiScale: image size  533   800  searchIncrement  1.1  grouping  3  flags  1  min size  26   26 
&gt; 
&gt; 
&gt; Thread 48 &quot;Thread (pooled)&quot; received signal SIGSEGV, Segmentation fault.
&gt; [Switching to Thread 0x7fff0d693700 (LWP 2250)]
&gt; 0x00007fffe937f8d0 in QMapDataBase::rotateRight(QMapNodeBase*) ()
&gt;    from /nix/store/br6yml05dzhccpaf4zi48vw3iw1xayzg-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; (gdb) 
&gt; (gdb) bt
&gt; #0  0x00007fffe937f8d0 in QMapDataBase::rotateRight(QMapNodeBase*) ()
&gt;    from /nix/store/br6yml05dzhccpaf4zi48vw3iw1xayzg-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #1  0x00007fffe937fa47 in QMapDataBase::rebalance(QMapNodeBase*) ()
&gt;    from /nix/store/br6yml05dzhccpaf4zi48vw3iw1xayzg-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #2  0x00007fffe937ff40 in QMapDataBase::createNode(int, int, QMapNodeBase*, bool) ()
&gt;    from /nix/store/br6yml05dzhccpaf4zi48vw3iw1xayzg-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #3  0x00007ffff5fd42bc in QMap&lt;QString, QVariant&gt;::insert(QString const&amp;, QVariant const&amp;) ()
&gt;    from /nix/store/n4bps1zsriih8kvnc8q0yqz0pckr1glz-digikam-6.0.0-beta2/lib/libdigikamcore.so.6.0.0
&gt; #4  0x00007ffff6166c7a in Digikam::DImg::setAttribute(QString const&amp;, QVariant const&amp;) ()
&gt;    from /nix/store/n4bps1zsriih8kvnc8q0yqz0pckr1glz-digikam-6.0.0-beta2/lib/libdigikamcore.so.6.0.0
&gt; #5  0x00007ffff623e302 in Digikam::LoadSaveThread::exifRotate(Digikam::DImg&amp;, QString const&amp;) ()
&gt;    from /nix/store/n4bps1zsriih8kvnc8q0yqz0pckr1glz-digikam-6.0.0-beta2/lib/libdigikamcore.so.6.0.0
&gt; #6  0x00007ffff62564fc in Digikam::PreviewLoadingTask::execute() ()
&gt;    from /nix/store/n4bps1zsriih8kvnc8q0yqz0pckr1glz-digikam-6.0.0-beta2/lib/libdigikamcore.so.6.0.0
&gt; #7  0x00007ffff623d4bd in Digikam::LoadSaveThread::run() ()
&gt;    from /nix/store/n4bps1zsriih8kvnc8q0yqz0pckr1glz-digikam-6.0.0-beta2/lib/libdigikamcore.so.6.0.0
&gt; #8  0x00007ffff6286f54 in Digikam::DynamicThread::Private::run() ()
&gt;    from /nix/store/n4bps1zsriih8kvnc8q0yqz0pckr1glz-digikam-6.0.0-beta2/lib/libdigikamcore.so.6.0.0
&gt; #9  0x00007fffe9314602 in ?? () from /nix/store/br6yml05dzhccpaf4zi48vw3iw1xayzg-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #10 0x00007fffe931d12b in ?? () from /nix/store/br6yml05dzhccpaf4zi48vw3iw1xayzg-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #11 0x00007ffff4f7d5a7 in start_thread () from /nix/store/fg4yq8i8wd08xg3fy58l6q73cjy8hjr2-glibc-2.27/lib/libpthread.so.0
&gt; #12 0x00007fffe67df22f in clone () from /nix/store/fg4yq8i8wd08xg3fy58l6q73cjy8hjr2-glibc-2.27/lib/libc.so.6</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1797716</commentid>
    <comment_count>30</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2018-10-23 11:10:58 +0000</bug_when>
    <thetext>Was this debug trace created with today&apos;s git/master version? If not, please repeat again.

Maik</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1797732</commentid>
    <comment_count>31</comment_count>
    <who name="">caulier.gilles</who>
    <bug_when>2018-10-23 12:27:49 +0000</bug_when>
    <thetext>And recompile all. remove build directory, reconfigure, and recompile all.

Typically, the bracktrace still uncomplete as not all source code information is available.

Look in this entry for ex :

https://bugs.kde.org/show_bug.cgi?id=400140#c2

As you can see, the internal source code path is given in the backtrace, because whole digiKam (and Exiv2 library) is compiled with all debug symbols.)

Gilles Caulier</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1797733</commentid>
    <comment_count>32</comment_count>
    <who name="">timokau</who>
    <bug_when>2018-10-23 12:40:22 +0000</bug_when>
    <thetext>(In reply to Maik Qualmann from comment #30)
&gt; Was this debug trace created with today&apos;s git/master version? If not, please
&gt; repeat again.
&gt; 
&gt; Maik

It was with the last version from this ticket, 985be20fd70563bb3989cbb6670880c27f3babba. I&apos;ll retry with the latest master.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1797735</commentid>
    <comment_count>33</comment_count>
    <who name="">timokau</who>
    <bug_when>2018-10-23 12:42:58 +0000</bug_when>
    <thetext>(In reply to caulier.gilles from comment #31)
&gt; And recompile all. remove build directory, reconfigure, and recompile all.
&gt; 
&gt; Typically, the bracktrace still uncomplete as not all source code
&gt; information is available.
&gt; 
&gt; Look in this entry for ex :
&gt; 
&gt; https://bugs.kde.org/show_bug.cgi?id=400140#c2
&gt; 
&gt; As you can see, the internal source code path is given in the backtrace,
&gt; because whole digiKam (and Exiv2 library) is compiled with all debug
&gt; symbols.)
&gt; 
&gt; Gilles Caulier

Every build happens in a sandbox completely isolated from all the builds before (since I&apos;m modifying my distro&apos;s build receipe and using my package manager to build), so everything is recompiled with `-DCMAKE_BUILD_TYPE=debug`. The exact cmake flags passed are

&gt; -DENABLE_MYSQLSUPPORT=1 -DENABLE_INTERNALMYSQL=1 -DENABLE_MEDIAPLAYER=1 -DCMAKE_BUILD_TYPE=debug</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1797765</commentid>
    <comment_count>34</comment_count>
    <who name="">timokau</who>
    <bug_when>2018-10-23 14:50:34 +0000</bug_when>
    <thetext>I&apos;ve found the issue with the debug symbols. My package manager is being a bit too helpful and inserting &quot;-DCMAKE_BUILD_TYPE=Release&quot; by default, overriding me setting it to debug. My bad, will fix.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1797871</commentid>
    <comment_count>35</comment_count>
    <who name="">timokau</who>
    <bug_when>2018-10-23 21:28:52 +0000</bug_when>
    <thetext>With the version from today (c71842f1624c6d6518a20e071d36512f0250595b) I could reproduce the QMap error again. That was before I managed to get the debug working however:

&gt; digikam.general: Check for finish:  22 packages, 0 infos to filter, hasFinished() false
&gt; digikam.dimg: &quot;/home/timo/Pictures/Pictures/Android/Pictures/Screenshots/Screenshot_2014-05-15-18-47-42.png&quot;  : PNG file identified
&gt; digikam.metaengine: Loading image history  &quot;&quot;
&gt; digikam.metaengine: DateTime =&gt; Exif.Photo.DateTimeOriginal =&gt; QDateTime(2014-05-15 18:47:44.000 CEST Qt::TimeSpec(LocalTime))
&gt; digikam.metaengine: DateTime =&gt; Exif.Image.DateTime =&gt; QDateTime(2014-05-15 18:47:44.000 CEST Qt::TimeSpec(LocalTime))
&gt; 
&gt; Thread 77 &quot;Thread (pooled)&quot; received signal SIGSEGV, Segmentation fault.
&gt; [Switching to Thread 0x7ffef3fff700 (LWP 26867)]
&gt; 0x00007ffff5fd0063 in QMapNode&lt;QString, QVariant&gt;::copy(QMapData&lt;QString, QVariant&gt;*) const () from /nix/store/752mjcqc64a8v4q241kzrmsx3vrl2sjn-digikam-6.0.0-beta2/lib/libdigikamcore.so.6.0.0
&gt; (gdb) bg
&gt; Undefined command: &quot;bg&quot;.  Try &quot;help&quot;.
&gt; (gdb) bt
&gt; #0  0x00007ffff5fd0063 in QMapNode&lt;QString, QVariant&gt;::copy(QMapData&lt;QString, QVariant&gt;*) const () from /nix/store/752mjcqc64a8v4q241kzrmsx3vrl2sjn-digikam-6.0.0-beta2/lib/libdigikamcore.so.6.0.0
&gt; #1  0x00007ffff5fd01b2 in QMap&lt;QString, QVariant&gt;::insert(QString const&amp;, QVariant const&amp;) () from /nix/store/752mjcqc64a8v4q241kzrmsx3vrl2sjn-digikam-6.0.0-beta2/lib/libdigikamcore.so.6.0.0
&gt; #2  0x00007ffff61618de in Digikam::DImg::setAttribute(QString const&amp;, QVariant const&amp;) () from /nix/store/752mjcqc64a8v4q241kzrmsx3vrl2sjn-digikam-6.0.0-beta2/lib/libdigikamcore.so.6.0.0
&gt; #3  0x00007ffff6239922 in Digikam::LoadSaveThread::exifRotate(Digikam::DImg&amp;, QString const&amp;) () from /nix/store/752mjcqc64a8v4q241kzrmsx3vrl2sjn-digikam-6.0.0-beta2/lib/libdigikamcore.so.6.0.0
&gt; #4  0x00007ffff6251b1c in Digikam::PreviewLoadingTask::execute() () from /nix/store/752mjcqc64a8v4q241kzrmsx3vrl2sjn-digikam-6.0.0-beta2/lib/libdigikamcore.so.6.0.0
&gt; #5  0x00007ffff6238add in Digikam::LoadSaveThread::run() () from /nix/store/752mjcqc64a8v4q241kzrmsx3vrl2sjn-digikam-6.0.0-beta2/lib/libdigikamcore.so.6.0.0
&gt; #6  0x00007ffff6282574 in Digikam::DynamicThread::Private::run() () from /nix/store/752mjcqc64a8v4q241kzrmsx3vrl2sjn-digikam-6.0.0-beta2/lib/libdigikamcore.so.6.0.0
&gt; #7  0x00007fffe9310602 in ?? () from /nix/store/br6yml05dzhccpaf4zi48vw3iw1xayzg-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #8  0x00007fffe931912b in ?? () from /nix/store/br6yml05dzhccpaf4zi48vw3iw1xayzg-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #9  0x00007ffff4f795a7 in start_thread () from /nix/store/fg4yq8i8wd08xg3fy58l6q73cjy8hjr2-glibc-2.27/lib/libpthread.so.0
&gt; #10 0x00007fffe67db22f in clone () from /nix/store/fg4yq8i8wd08xg3fy58l6q73cjy8hjr2-glibc-2.27/lib/libc.so.6

Stacktraces after I got debug working (all the other error):

&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.dimg: &quot;/home/timo/Pictures/Pictures/Android/Whatsapp/IMG-20130707-WA0000.jpg&quot;  : JPEG file identified
&gt; digikam.metaengine: Loading image history  &quot;&quot;
&gt; digikam.metaengine: DateTime =&gt; Exif.Photo.DateTimeOriginal =&gt; QDateTime(2014-04-17 14:44:29.000 CEST Qt::TimeSpec(LocalTime))
&gt; digikam.metaengine: DateTime =&gt; Exif.Image.DateTime =&gt; QDateTime(2014-04-17 14:44:29.000 CEST Qt::TimeSpec(LocalTime))
&gt; digikam.dimg: &quot;/home/timo/Pictures/Pictures/Android/Whatsapp/IMG-20130708-WA0000.jpg&quot;  : JPEG file identified
&gt; digikam.metaengine: Loading image history  &quot;&quot;
&gt; digikam.metaengine: DateTime =&gt; Exif.Photo.DateTimeOriginal =&gt; QDateTime(2013-07-08 16:44:29.000 CEST Qt::TimeSpec(LocalTime))
&gt; digikam.metaengine: DateTime =&gt; Exif.Photo.DateTimeDigitized =&gt; QDateTime(2013-07-08 16:44:29.000 CEST Qt::TimeSpec(LocalTime))
&gt; double free or corruption (out)
&gt; 
&gt; Thread 34 &quot;Thread (pooled)&quot; received signal SIGABRT, Aborted.
&gt; [Switching to Thread 0x7fff3dae2700 (LWP 31498)]
&gt; 0x00007fffe699cbe0 in raise () from /nix/store/fg4yq8i8wd08xg3fy58l6q73cjy8hjr2-glibc-2.27/lib/libc.so.6
&gt; (gdb) bt
&gt; #0  0x00007fffe699cbe0 in raise () from /nix/store/fg4yq8i8wd08xg3fy58l6q73cjy8hjr2-glibc-2.27/lib/libc.so.6
&gt; #1  0x00007fffe699ddc1 in abort () from /nix/store/fg4yq8i8wd08xg3fy58l6q73cjy8hjr2-glibc-2.27/lib/libc.so.6
&gt; #2  0x00007fffe69de2ac in __libc_message () from /nix/store/fg4yq8i8wd08xg3fy58l6q73cjy8hjr2-glibc-2.27/lib/libc.so.6
&gt; #3  0x00007fffe69e449a in malloc_printerr () from /nix/store/fg4yq8i8wd08xg3fy58l6q73cjy8hjr2-glibc-2.27/lib/libc.so.6
&gt; #4  0x00007fffe69e53e0 in _int_free () from /nix/store/fg4yq8i8wd08xg3fy58l6q73cjy8hjr2-glibc-2.27/lib/libc.so.6
&gt; #5  0x00007ffff6399d9d in Digikam::DImg::rotate (this=0x36095f8, angle=angle@entry=Digikam::DImg::ROT90)
&gt;     at /home/timo/tmp/digikam-build/source/core/libs/dimg/dimg.cpp:2328
&gt; #6  0x00007ffff6399ff7 in Digikam::DImg::rotateAndFlip (this=this@entry=0x36095f8, orientation=&lt;optimized out&gt;)
&gt;     at /home/timo/tmp/digikam-build/source/core/libs/dimg/dimg.cpp:2652
&gt; #7  0x00007ffff6448fba in Digikam::LoadSaveThread::exifRotate (image=..., filePath=...)
&gt;     at /home/timo/tmp/digikam-build/source/core/libs/threadimageio/loadsavethread.cpp:335
&gt; #8  0x00007ffff645d8cd in Digikam::PreviewLoadingTask::execute (this=0x3609400)
&gt;     at /home/timo/tmp/digikam-build/source/core/libs/threadimageio/previewtask.cpp:384
&gt; #9  0x00007ffff6448d3e in Digikam::LoadSaveThread::run (this=0x7fffbc00be80)
&gt;     at /home/timo/tmp/digikam-build/source/core/libs/threadimageio/loadsavethread.cpp:133
&gt; #10 0x00007ffff6487a8e in Digikam::DynamicThread::Private::run (this=0x38c27f0)
&gt;     at /home/timo/tmp/digikam-build/source/core/libs/threads/dynamicthread.cpp:183
&gt; #11 0x00007fffe9573602 in ?? () from /nix/store/br6yml05dzhccpaf4zi48vw3iw1xayzg-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #12 0x00007fffe957c12b in ?? () from /nix/store/br6yml05dzhccpaf4zi48vw3iw1xayzg-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #13 0x00007ffff51dc5a7 in start_thread () from /nix/store/fg4yq8i8wd08xg3fy58l6q73cjy8hjr2-glibc-2.27/lib/libpthread.so.0
&gt; #14 0x00007fffe6a5a22f in clone () from /nix/store/fg4yq8i8wd08xg3fy58l6q73cjy8hjr2-glibc-2.27/lib/libc.so.6


&gt; digikam.facesengine: detectMultiScale gave  (QRect(94,54 92x56), QRect(61,112 135x81))
&gt; digikam.general: Found 1 faces in &quot;croppedImage.png&quot; QSize(971, 1128) QSize(971, 1128)
&gt; digikam.metaengine: Exif color-space tag is sRGB. Using default sRGB ICC profile.
&gt; digikam.general: Entry QRect(318,176 506x506)6overlapsQRect(318,176 506x506)280, skipping
&gt; digikam.dimg:  : return null image! ( false ,  0 ,  0 )
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.dimg: &quot;/home/timo/Pictures/DCIM/OpenCamera/IMG_20180505_020021.jpg&quot;  : JPEG file identified
&gt; digikam.metaengine: Loading image history  &quot;&quot;
&gt; digikam.metaengine: DateTime =&gt; Exif.Photo.DateTimeOriginal =&gt; QDateTime(2018-05-05 02:00:24.000 CEST Qt::TimeSpec(LocalTime))
&gt; digikam.metaengine: DateTime =&gt; Exif.Image.DateTime =&gt; QDateTime(2018-05-05 02:00:24.000 CEST Qt::TimeSpec(LocalTime))
&gt; digikam.facesengine: detectMultiScale: image size  800   600  searchIncrement  1.1  grouping  3  flags  1  min size  26   26 
&gt; 
&gt; digikam.facesengine: detectMultiScale gave  ()
&gt; digikam.general: Found 0 faces in &quot;IMG_20180427_002628.jpg&quot; QSize(4160, 3120) QSize(4160, 3120)
&gt; digikam.facesengine: detectMultiScale: image size  800   600  searchIncrement  1.1  grouping  3  flags  1  min size  26   26 
&gt; 
&gt; digikam.metaengine: Exif color-space tag is sRGB. Using default sRGB ICC profile.
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; 
&gt; Thread 34 &quot;Thread (pooled)&quot; received signal SIGSEGV, Segmentation fault.
&gt; [Switching to Thread 0x7fff3dae2700 (LWP 12534)]
&gt; 0x00007fffe95f818a in operator==(QString const&amp;, QString const&amp;) ()
&gt;    from /nix/store/br6yml05dzhccpaf4zi48vw3iw1xayzg-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; (gdb) bt
&gt; #0  0x00007fffe95f818a in operator==(QString const&amp;, QString const&amp;) ()
&gt;    from /nix/store/br6yml05dzhccpaf4zi48vw3iw1xayzg-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #1  0x00007ffff644d5d5 in Digikam::LoadingDescription::equalsIgnoreReducedVersion (this=&lt;optimized out&gt;, other=...)
&gt;     at /home/timo/tmp/digikam-build/source/core/libs/threadimageio/loadingdescription.cpp:313
&gt; #2  0x00007ffff6458f93 in Digikam::SharedLoadingTask::notifyNewLoadingProcess (this=0x37fd640, process=&lt;optimized out&gt;, 
&gt;     description=...) at /home/timo/tmp/digikam-build/source/core/libs/threadimageio/loadsavetask.cpp:436
&gt; #3  0x00007ffff644ed10 in Digikam::LoadingCache::notifyNewLoadingProcess (this=this@entry=0x111e870, 
&gt;     process=process@entry=0x2b42540, description=...)
&gt;     at /home/timo/tmp/digikam-build/source/core/libs/threadimageio/loadingcache.cpp:243
&gt; #4  0x00007ffff645d736 in Digikam::PreviewLoadingTask::execute (this=0x2b42370)
&gt;     at /home/timo/tmp/digikam-build/source/core/libs/threadimageio/previewtask.cpp:162
&gt; #5  0x00007ffff6448d3e in Digikam::LoadSaveThread::run (this=0x2b40a00)
&gt;     at /home/timo/tmp/digikam-build/source/core/libs/threadimageio/loadsavethread.cpp:133
&gt; #6  0x00007ffff6487a8e in Digikam::DynamicThread::Private::run (this=0x37ba7f0)
&gt;     at /home/timo/tmp/digikam-build/source/core/libs/threads/dynamicthread.cpp:183
&gt; #7  0x00007fffe9573602 in ?? () from /nix/store/br6yml05dzhccpaf4zi48vw3iw1xayzg-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #8  0x00007fffe957c12b in ?? () from /nix/store/br6yml05dzhccpaf4zi48vw3iw1xayzg-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #9  0x00007ffff51dc5a7 in start_thread () from /nix/store/fg4yq8i8wd08xg3fy58l6q73cjy8hjr2-glibc-2.27/lib/libpthread.so.0
&gt; #10 0x00007fffe6a5a22f in clone () from /nix/store/fg4yq8i8wd08xg3fy58l6q73cjy8hjr2-glibc-2.27/lib/libc.so.6


&gt; digikam.metaengine: Exif color-space tag is sRGB. Using default sRGB ICC profile.
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.metaengine: Orientation =&gt; Exif.Image.Orientation =&gt; 1
&gt; digikam.dimg: &quot;/home/timo/Pictures/DCIM/OpenCamera/IMG_20180614_114558.jpg&quot;  : JPEG file identified
&gt; digikam.metaengine: Loading image history  &quot;&quot;
&gt; digikam.metaengine: DateTime =&gt; Exif.Photo.DateTimeOriginal =&gt; QDateTime(2018-06-14 11:45:58.000 CEST Qt::TimeSpec(LocalTime))
&gt; digikam.metaengine: DateTime =&gt; Exif.Image.DateTime =&gt; QDateTime(2018-06-14 11:45:58.000 CEST Qt::TimeSpec(LocalTime))
&gt; 
&gt; Thread 585 &quot;Thread (pooled)&quot; received signal SIGSEGV, Segmentation fault.
&gt; [Switching to Thread 0x7fff19ffb700 (LWP 23948)]
&gt; 0x00007fffe69e9311 in free () from /nix/store/fg4yq8i8wd08xg3fy58l6q73cjy8hjr2-glibc-2.27/lib/libc.so.6
&gt; (gdb) bt
&gt; #0  0x00007fffe69e9311 in free () from /nix/store/fg4yq8i8wd08xg3fy58l6q73cjy8hjr2-glibc-2.27/lib/libc.so.6
&gt; #1  0x00007ffff63991b5 in Digikam::DImg::Private::~Private (this=0x7fff3800c900, __in_chrg=&lt;optimized out&gt;)
&gt;     at /home/timo/tmp/digikam-build/source/core/libs/dimg/dimg_p.h:89
&gt; #2  Digikam::DSharedDataPointer&lt;Digikam::DImg::Private&gt;::~DSharedDataPointer (this=&lt;optimized out&gt;, __in_chrg=&lt;optimized out&gt;)
&gt;     at /home/timo/tmp/digikam-build/source/core/libs/dimg/dshareddata.h:182
&gt; #3  Digikam::DImg::~DImg (this=&lt;optimized out&gt;, __in_chrg=&lt;optimized out&gt;)
&gt;     at /home/timo/tmp/digikam-build/source/core/libs/dimg/dimg.cpp:174
&gt; #4  0x00007ffff62c385b in Digikam::IccManager::Private::~Private (this=0x7fff100acf20, __in_chrg=&lt;optimized out&gt;)
&gt;     at /home/timo/tmp/digikam-build/source/core/libs/dimg/filters/icc/iccmanager.cpp:41
&gt; #5  Digikam::IccManager::~IccManager (this=0x7fff19ffa8f8, __in_chrg=&lt;optimized out&gt;)
&gt;     at /home/timo/tmp/digikam-build/source/core/libs/dimg/filters/icc/iccmanager.cpp:101
&gt; #6  0x00007ffff6459558 in Digikam::SharedLoadingTask::postProcess (this=0x529b460)
&gt;     at /home/timo/tmp/digikam-build/source/core/libs/threadimageio/loadsavetask.cpp:340
&gt; #7  0x00007ffff645d169 in Digikam::PreviewLoadingTask::execute (this=0x529b460)
&gt;     at /home/timo/tmp/digikam-build/source/core/libs/threadimageio/previewtask.cpp:389
&gt; #8  0x00007ffff6448d3e in Digikam::LoadSaveThread::run (this=0x7fffbc00bb50)
&gt;     at /home/timo/tmp/digikam-build/source/core/libs/threadimageio/loadsavethread.cpp:133
&gt; #9  0x00007ffff6487a8e in Digikam::DynamicThread::Private::run (this=0x4bd1880)
&gt;     at /home/timo/tmp/digikam-build/source/core/libs/threads/dynamicthread.cpp:183
&gt; #10 0x00007fffe9573602 in ?? () from /nix/store/br6yml05dzhccpaf4zi48vw3iw1xayzg-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #11 0x00007fffe957c12b in ?? () from /nix/store/br6yml05dzhccpaf4zi48vw3iw1xayzg-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #12 0x00007ffff51dc5a7 in start_thread () from /nix/store/fg4yq8i8wd08xg3fy58l6q73cjy8hjr2-glibc-2.27/lib/libpthread.so.0
&gt; #13 0x00007fffe6a5a22f in clone () from /nix/store/fg4yq8i8wd08xg3fy58l6q73cjy8hjr2-glibc-2.27/lib/libc.so.6</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1797922</commentid>
    <comment_count>36</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2018-10-24 07:11:28 +0000</bug_when>
    <thetext>This crashes in so many different places in the code. What surprises me that I can not reproduce it, even after hours. Which CPU does your computer have? Intel or AMD?

Maik</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1797926</commentid>
    <comment_count>37</comment_count>
    <who name="">timokau</who>
    <bug_when>2018-10-24 07:30:25 +0000</bug_when>
    <thetext>Intel i5-3470. I can also reproduce the error on my laptop (also intel cpu but different one). The two factors laptop and desktop have in common are

- the exact dependencies (both the same package manager which exactly defines the environment)
- the photo collection

Is there some sizeable public collection available that I can try to reproduce it on?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1797935</commentid>
    <comment_count>38</comment_count>
    <who name="">caulier.gilles</who>
    <bug_when>2018-10-24 07:45:06 +0000</bug_when>
    <thetext>I have collection of test images, not public, as photos was send by users since many years. And this is not only specific to Face management.

Starting to share data file is a good idea but we will have a problem with rights, as faces can be present.

This can be only done through a limited access over a cloud storage. 

To resume, it&apos;s complicated...

Gilles Caulier</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1797980</commentid>
    <comment_count>39</comment_count>
    <who name="">timokau</who>
    <bug_when>2018-10-24 13:17:06 +0000</bug_when>
    <thetext>I found a huge public image database with faces: https://data.vision.ee.ethz.ch/cvl/rrothe/imdb-wiki/

I could reproduce the crash with their cropped 7G version (https://data.vision.ee.ethz.ch/cvl/rrothe/imdb-wiki/static/imdb_crop.tar). If you cannot reproduce it with that, you could try to install the nix package manager (https://nixos.org/nix/) which runs under any linux distro and install the digikam version there (`nix build nixpkgs.digikam` will create a symlink `result` in the current folder pointing to a digikam installation).

The backtrace from the crash with the IMDB dataset:

&gt; digikam.facesengine: detectMultiScale gave  ()
&gt; digikam.general: Found 1 faces in &quot;nm0224703_rm2961290496_1967-7-20_2011.jpg&quot; QSize(500, 500) QSize(500, 500)
&gt; digikam.facesengine: detectMultiScale: image size  356   355  searchIncrement  1.1  grouping  3  flags  1  min size  0   0 
&gt; 
&gt; 
&gt; Thread 28 &quot;Thread (pooled)&quot; received signal SIGSEGV, Segmentation fault.
&gt; [Switching to Thread 0x7fff177fe700 (LWP 22023)]
&gt; 0x00007fffe95f8248 in operator&lt;(QString const&amp;, QString const&amp;) () from /nix/store/br6yml05dzhccpaf4zi48vw3iw1xayzg-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; (gdb) bt
&gt; #0  0x00007fffe95f8248 in operator&lt;(QString const&amp;, QString const&amp;) () from /nix/store/br6yml05dzhccpaf4zi48vw3iw1xayzg-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #1  0x00007ffff6232fd1 in qMapLessThanKey&lt;QString&gt; (key2=..., key1=...) at /nix/store/zah3h9qlxs79452a3g0pyrxb77i9zrw6-qtbase-5.11.1-dev/include/QtCore/qmap.h:71
&gt; #2  QMap&lt;QString, QVariant&gt;::insert (this=0x7ffeec197ac8, akey=..., avalue=...) at /nix/store/zah3h9qlxs79452a3g0pyrxb77i9zrw6-qtbase-5.11.1-dev/include/QtCore/qmap.h:711
&gt; #3  0x00007ffff639a1de in Digikam::DImg::Private::attributesInsert (value=..., key=..., this=0x7ffeec197aa0) at /home/timo/tmp/digikam-build/source/core/libs/dimg/dimg_p.h:135
&gt; #4  Digikam::DImg::setAttribute (this=&lt;optimized out&gt;, key=..., value=...) at /home/timo/tmp/digikam-build/source/core/libs/dimg/dimg.cpp:1049
&gt; #5  0x00007ffff6448ff2 in Digikam::LoadSaveThread::exifRotate (image=..., filePath=...) at /home/timo/tmp/digikam-build/source/core/libs/threadimageio/loadsavethread.cpp:336
&gt; #6  0x00007ffff645d8cd in Digikam::PreviewLoadingTask::execute (this=0x8d2d470) at /home/timo/tmp/digikam-build/source/core/libs/threadimageio/previewtask.cpp:384
&gt; #7  0x00007ffff6448d3e in Digikam::LoadSaveThread::run (this=0xd72f240) at /home/timo/tmp/digikam-build/source/core/libs/threadimageio/loadsavethread.cpp:133
&gt; #8  0x00007ffff6487a8e in Digikam::DynamicThread::Private::run (this=0x10bfc870) at /home/timo/tmp/digikam-build/source/core/libs/threads/dynamicthread.cpp:183
&gt; #9  0x00007fffe9573602 in ?? () from /nix/store/br6yml05dzhccpaf4zi48vw3iw1xayzg-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #10 0x00007fffe957c12b in ?? () from /nix/store/br6yml05dzhccpaf4zi48vw3iw1xayzg-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #11 0x00007ffff51dc5a7 in start_thread () from /nix/store/fg4yq8i8wd08xg3fy58l6q73cjy8hjr2-glibc-2.27/lib/libpthread.so.0
&gt; #12 0x00007fffe6a5a22f in clone () from /nix/store/fg4yq8i8wd08xg3fy58l6q73cjy8hjr2-glibc-2.27/lib/libc.so.6</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1797984</commentid>
    <comment_count>40</comment_count>
    <who name="">timokau</who>
    <bug_when>2018-10-24 13:25:08 +0000</bug_when>
    <thetext>The crash happened for me after recognizing 10423 faces, but it can happen pretty much anytime.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1798019</commentid>
    <comment_count>41</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2018-10-24 15:01:19 +0000</bug_when>
    <thetext>I have an idea after a deeper review of the preview task.
I&apos;ll commit it tonight.

Maik</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1798054</commentid>
    <comment_count>42</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2018-10-24 17:48:50 +0000</bug_when>
    <thetext>Git commit bede4dcc3829b24494b4e4733579455452c62775 by Maik Qualmann.
Committed on 24/10/2018 at 17:47.
Pushed by mqualmann into branch &apos;master&apos;.

try to fix the crash in the preview task
Related: bug 397919

M  +26   -28   core/libs/threadimageio/previewtask.cpp

https://commits.kde.org/digikam/bede4dcc3829b24494b4e4733579455452c62775</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1798100</commentid>
    <comment_count>43</comment_count>
    <who name="">timokau</who>
    <bug_when>2018-10-24 22:13:24 +0000</bug_when>
    <thetext>No luck:

&gt; digikam.facesengine: detectMultiScale gave  ()
&gt; digikam.general: Found 0 faces in &quot;235139171_69724.jpg&quot; QSize(493, 495) QSize(493, 495)
&gt; digikam.facesengine: detectMultiScale: image size  418   800  searchIncrement  1.1  grouping  3  flags  1  min size  25   25 
&gt; 
&gt; 
&gt; Thread 101 &quot;Thread (pooled)&quot; received signal SIGSEGV, Segmentation fault.
&gt; [Switching to Thread 0x7ffef37fd700 (LWP 3731)]
&gt; 0x00007ffff64522c5 in Digikam::LoadingTask::progressInfo (this=0x4b5d740, img=0x4b5d938, progress=0.100000001) at /home/timo/tmp/digikam/source/core/libs/threadimageio/loadsavetask.cpp:65
&gt; 65              if (m_thread-&gt;querySendNotifyEvent())
&gt; (gdb) bt
&gt; #0  0x00007ffff64522c5 in Digikam::LoadingTask::progressInfo (this=0x4b5d740, img=0x4b5d938, progress=0.100000001) at /home/timo/tmp/digikam/source/core/libs/threadimageio/loadsavetask.cpp:65
&gt; #1  0x00007ffff6244f2a in Digikam::JPEGLoader::load (this=this@entry=0x7ffef37fc890, filePath=..., observer=observer@entry=0x4b5d750) at /home/timo/tmp/digikam/source/core/libs/dimg/loaders/jpegloader.cpp:374
&gt; #2  0x00007ffff6398160 in Digikam::DImg::load (this=this@entry=0x4b5d938, filePath=..., loadFlagsInt=loadFlagsInt@entry=63, observer=observer@entry=0x4b5d750, rawDecodingSettings=...)
&gt;     at /home/timo/tmp/digikam/source/core/libs/dimg/dimg.cpp:429
&gt; #3  0x00007ffff6398760 in Digikam::DImg::load (this=this@entry=0x4b5d938, filePath=..., observer=observer@entry=0x4b5d750, rawDecodingSettings=...) at /home/timo/tmp/digikam/source/core/libs/dimg/dimg.cpp:373
&gt; #4  0x00007ffff64574b1 in Digikam::PreviewLoadingTask::execute (this=0x4b5d740) at /home/timo/tmp/digikam/source/core/libs/threadimageio/previewtask.cpp:317
&gt; #5  0x00007ffff6442efe in Digikam::LoadSaveThread::run (this=0x5595100) at /home/timo/tmp/digikam/source/core/libs/threadimageio/loadsavethread.cpp:133
&gt; #6  0x00007ffff6481bae in Digikam::DynamicThread::Private::run (this=0x4ef5860) at /home/timo/tmp/digikam/source/core/libs/threads/dynamicthread.cpp:183
&gt; #7  0x00007fffe956d602 in ?? () from /nix/store/br6yml05dzhccpaf4zi48vw3iw1xayzg-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #8  0x00007fffe957612b in ?? () from /nix/store/br6yml05dzhccpaf4zi48vw3iw1xayzg-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #9  0x00007ffff51d65a7 in start_thread () from /nix/store/fg4yq8i8wd08xg3fy58l6q73cjy8hjr2-glibc-2.27/lib/libpthread.so.0
&gt; #10 0x00007fffe6a5222f in clone () from /nix/store/fg4yq8i8wd08xg3fy58l6q73cjy8hjr2-glibc-2.27/lib/libc.so.6</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1798153</commentid>
    <comment_count>44</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2018-10-25 06:13:06 +0000</bug_when>
    <thetext>Git commit 71fe4107faa82bd992756392e53910897ab4fc09 by Maik Qualmann.
Committed on 25/10/2018 at 06:12.
Pushed by mqualmann into branch &apos;master&apos;.

try to fix progressInfo crash
Related: bug 397919

M  +3    -3    core/libs/threadimageio/loadsavetask.cpp
M  +3    -0    core/libs/threadimageio/loadsavetask.h

https://commits.kde.org/digikam/71fe4107faa82bd992756392e53910897ab4fc09</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1798173</commentid>
    <comment_count>45</comment_count>
    <who name="">timokau</who>
    <bug_when>2018-10-25 08:47:19 +0000</bug_when>
    <thetext>Still segfaulting:

&gt; digikam.facesengine: detectMultiScale gave  ()
&gt; digikam.general: Found 1 faces in &quot;IMG-20180705-WA0003.jpg&quot; QSize(1024, 768) QSize(1024, 768)
&gt; digikam.facesengine: detectMultiScale: image size  800   600  searchIncrement  1.1  grouping  3  flags  1  min size  26   26 
&gt; 
&gt; 
&gt; Thread 279 &quot;Thread (pooled)&quot; received signal SIGSEGV, Segmentation fault.
&gt; [Switching to Thread 0x7fff1d7fa700 (LWP 23866)]
&gt; 0x00007ffff63bf22e in QSharedDataPointer&lt;Digikam::MetaEngineData::Private&gt;::operator= (o=..., this=0x7ffedc3e6390)
&gt;     at /nix/store/zah3h9qlxs79452a3g0pyrxb77i9zrw6-qtbase-5.11.1-dev/include/QtCore/qshareddata.h:99
&gt; 99                  if (old &amp;&amp; !old-&gt;ref.deref())
&gt; (gdb) bt
&gt; #0  0x00007ffff63bf22e in QSharedDataPointer&lt;Digikam::MetaEngineData::Private&gt;::operator= (o=..., this=0x7ffedc3e6390)
&gt;     at /nix/store/zah3h9qlxs79452a3g0pyrxb77i9zrw6-qtbase-5.11.1-dev/include/QtCore/qshareddata.h:99
&gt; #1  Digikam::MetaEngineData::operator= (this=0x7ffedc3e6390, other=...)
&gt;     at /home/timo/tmp/digikam/source/core/libs/metadataengine/engine/metaengine_data.cpp:51
&gt; #2  0x00007ffff638eacc in Digikam::DImg::setMetadata (this=this@entry=0x42111a8, data=...)
&gt;     at /home/timo/tmp/digikam/source/core/libs/dimg/dimg.cpp:1015
&gt; #3  0x00007ffff623c153 in Digikam::DImgLoader::readMetadata (this=0x7fff1d7f9890, filePath=...)
&gt;     at /home/timo/tmp/digikam/source/core/libs/dimg/loaders/dimgloader.cpp:219
&gt; #4  0x00007ffff6243d11 in Digikam::JPEGLoader::load (this=this@entry=0x7fff1d7f9890, filePath=..., 
&gt;     observer=observer@entry=0x4210fc0) at /home/timo/tmp/digikam/source/core/libs/dimg/loaders/jpegloader.cpp:92
&gt; #5  0x00007ffff6398160 in Digikam::DImg::load (this=this@entry=0x42111a8, filePath=..., loadFlagsInt=loadFlagsInt@entry=63, 
&gt;     observer=observer@entry=0x4210fc0, rawDecodingSettings=...) at /home/timo/tmp/digikam/source/core/libs/dimg/dimg.cpp:429
&gt; #6  0x00007ffff6398760 in Digikam::DImg::load (this=this@entry=0x42111a8, filePath=..., observer=observer@entry=0x4210fc0, 
&gt;     rawDecodingSettings=...) at /home/timo/tmp/digikam/source/core/libs/dimg/dimg.cpp:373
&gt; #7  0x00007ffff64574b1 in Digikam::PreviewLoadingTask::execute (this=0x4210fb0)
&gt;     at /home/timo/tmp/digikam/source/core/libs/threadimageio/previewtask.cpp:317
&gt; #8  0x00007ffff6442efe in Digikam::LoadSaveThread::run (this=0x366f3d0)
&gt;     at /home/timo/tmp/digikam/source/core/libs/threadimageio/loadsavethread.cpp:133
&gt; #9  0x00007ffff6481bae in Digikam::DynamicThread::Private::run (this=0x36d50a0)
&gt;     at /home/timo/tmp/digikam/source/core/libs/threads/dynamicthread.cpp:183
&gt; #10 0x00007fffe956d602 in ?? () from /nix/store/br6yml05dzhccpaf4zi48vw3iw1xayzg-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #11 0x00007fffe957612b in ?? () from /nix/store/br6yml05dzhccpaf4zi48vw3iw1xayzg-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #12 0x00007ffff51d65a7 in start_thread () from /nix/store/fg4yq8i8wd08xg3fy58l6q73cjy8hjr2-glibc-2.27/lib/libpthread.so.0
&gt; #13 0x00007fffe6a5222f in clone () from /nix/store/fg4yq8i8wd08xg3fy58l6q73cjy8hjr2-glibc-2.27/lib/libc.so.6</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1801399</commentid>
    <comment_count>46</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2018-10-27 18:09:09 +0000</bug_when>
    <thetext>Git commit 132352e8668695fd3ab2718e6184a5e794c64179 by Maik Qualmann.
Committed on 27/10/2018 at 18:07.
Pushed by mqualmann into branch &apos;master&apos;.

Reorganization DImg loading and caching from the PreviewLoadingTask
Now we cache an unprocessed DImg
Related: bug 397919

M  +167  -213  core/libs/threadimageio/previewtask.cpp

https://commits.kde.org/digikam/132352e8668695fd3ab2718e6184a5e794c64179</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1802054</commentid>
    <comment_count>47</comment_count>
    <who name="">timokau</who>
    <bug_when>2018-10-28 08:55:52 +0000</bug_when>
    <thetext>This time DImg is not involved:

&gt; digikam.dimg: &quot;/home/timo/Pictures/Pictures/Android/Whatsapp/IMG-20140419-WA0001.jpg&quot;  : JPEG file identified
&gt; digikam.metaengine: Loading image history  &quot;&quot;
&gt; digikam.metaengine: DateTime =&gt; Exif.Photo.DateTimeOriginal =&gt; QDateTime(2014-04-19 16:32:22.000 CEST Qt::TimeSpec(LocalTime))
&gt; digikam.metaengine: DateTime =&gt; Exif.Photo.DateTimeDigitized =&gt; QDateTime(2014-04-19 16:32:22.000 CEST Qt::TimeSpec(LocalTime))
&gt; [New Thread 0x7fff103dc700 (LWP 12126)]
&gt; 
&gt; Thread 31 &quot;Thread (pooled)&quot; received signal SIGSEGV, Segmentation fault.
&gt; [Switching to Thread 0x7fff12be1700 (LWP 31519)]
&gt; 0x00007ffff6458512 in Digikam::PreviewLoadingTask::execute (this=0x125bf30) at /home/timo/repos/nixpkgs/backport/source/core/libs/threadimageio/previewtask.cpp:404
&gt; 404             if (needsPostProcessing())
&gt; (gdb) bt
&gt; #0  0x00007ffff6458512 in Digikam::PreviewLoadingTask::execute (this=0x125bf30) at /home/timo/repos/nixpkgs/backport/source/core/libs/threadimageio/previewtask.cpp:404
&gt; #1  0x00007ffff6443eee in Digikam::LoadSaveThread::run (this=0x7fffbc00fad0) at /home/timo/repos/nixpkgs/backport/source/core/libs/threadimageio/loadsavethread.cpp:133
&gt; #2  0x00007ffff648293e in Digikam::DynamicThread::Private::run (this=0x37aaf20) at /home/timo/repos/nixpkgs/backport/source/core/libs/threads/dynamicthread.cpp:183
&gt; #3  0x00007fffe956e602 in ?? () from /nix/store/br6yml05dzhccpaf4zi48vw3iw1xayzg-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #4  0x00007fffe957712b in ?? () from /nix/store/br6yml05dzhccpaf4zi48vw3iw1xayzg-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #5  0x00007ffff51d75a7 in start_thread () from /nix/store/fg4yq8i8wd08xg3fy58l6q73cjy8hjr2-glibc-2.27/lib/libpthread.so.0
&gt; #6  0x00007fffe6a4822f in clone () from /nix/store/fg4yq8i8wd08xg3fy58l6q73cjy8hjr2-glibc-2.27/lib/libc.so.6</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1802088</commentid>
    <comment_count>48</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2018-10-28 12:08:14 +0000</bug_when>
    <thetext>A new test with the latest git/master version would be good, maybe 2 or 3 backtraces.

Maik</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1802132</commentid>
    <comment_count>49</comment_count>
    <who name="">timokau</who>
    <bug_when>2018-10-28 17:07:23 +0000</bug_when>
    <thetext>Okay, tested with 848a76780f537f807f0be90d6e1ab00c451578e1 from today:

&gt; digikam.metaengine: Exif color-space tag is sRGB. Using default sRGB ICC profile.
&gt; digikam.facesengine: detectMultiScale gave  ()
&gt; digikam.general: Found 0 faces in &quot;IMG_20171220_173602.jpg&quot; QSize(3120, 4208) QSize(3120, 4208)
&gt; 
&gt; Thread 480 &quot;Thread (pooled)&quot; received signal SIGSEGV, Segmentation fault.
&gt; [Switching to Thread 0x7fff849ef700 (LWP 10580)]
&gt; 0x0000000003cbe610 in ?? ()
&gt; (gdb) bt
&gt; #0  0x0000000003cbe610 in ?? ()
&gt; #1  0x00007ffff644e29d in Digikam::LoadingTask::progressInfo (this=0x3a03fe0, img=&lt;optimized out&gt;, progress=0.800000012)
&gt;     at /home/timo/tmp/digikam/source/core/libs/threadimageio/loadsavetask.cpp:65
&gt; #2  0x00007ffff62412e0 in Digikam::JPEGLoader::load (this=this@entry=0x7fff849ee8d0, filePath=..., 
&gt;     observer=observer@entry=0x3a03ff0) at /home/timo/tmp/digikam/source/core/libs/dimg/loaders/jpegloader.cpp:470
&gt; #3  0x00007ffff6394130 in Digikam::DImg::load (this=this@entry=0x3a041d8, filePath=..., loadFlagsInt=loadFlagsInt@entry=63, 
&gt;     observer=observer@entry=0x3a03ff0, rawDecodingSettings=...) at /home/timo/tmp/digikam/source/core/libs/dimg/dimg.cpp:429
&gt; #4  0x00007ffff6394730 in Digikam::DImg::load (this=this@entry=0x3a041d8, filePath=..., observer=observer@entry=0x3a03ff0, 
&gt;     rawDecodingSettings=...) at /home/timo/tmp/digikam/source/core/libs/dimg/dimg.cpp:373
&gt; #5  0x00007ffff6453759 in Digikam::PreviewLoadingTask::execute (this=0x3a03fe0)
&gt;     at /home/timo/tmp/digikam/source/core/libs/threadimageio/previewtask.cpp:292
&gt; #6  0x00007ffff643eece in Digikam::LoadSaveThread::run (this=0x12aebe0)
&gt;     at /home/timo/tmp/digikam/source/core/libs/threadimageio/loadsavethread.cpp:133
&gt; #7  0x00007ffff647d9be in Digikam::DynamicThread::Private::run (this=0x3acc060)
&gt;     at /home/timo/tmp/digikam/source/core/libs/threads/dynamicthread.cpp:183
&gt; #8  0x00007fffe9569602 in ?? () from /nix/store/br6yml05dzhccpaf4zi48vw3iw1xayzg-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #9  0x00007fffe957212b in ?? () from /nix/store/br6yml05dzhccpaf4zi48vw3iw1xayzg-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #10 0x00007ffff51d25a7 in start_thread () from /nix/store/fg4yq8i8wd08xg3fy58l6q73cjy8hjr2-glibc-2.27/lib/libpthread.so.0
&gt; #11 0x00007fffe6a4322f in clone () from /nix/store/fg4yq8i8wd08xg3fy58l6q73cjy8hjr2-glibc-2.27/lib/libc.so.6

&gt; digikam.dimg: &quot;/home/timo/Pictures/Pictures/Abitur/Zeugnisvergabe/P1030017.JPG&quot;  : JPEG file identified
&gt; digikam.metaengine: Loading image history  &quot;&quot;
&gt; digikam.general: Check for finish:  6 packages, 0 infos to filter, hasFinished() false
&gt; digikam.metaengine: DateTime =&gt; Exif.Photo.DateTimeOriginal =&gt; QDateTime(2015-06-17 19:51:06.000 CEST Qt::TimeSpec(LocalTime))
&gt; digikam.metaengine: DateTime =&gt; Exif.Photo.DateTimeDigitized =&gt; QDateTime(2015-06-17 19:51:06.000 CEST Qt::TimeSpec(LocalTime))
&gt; digikam.metaengine: Orientation =&gt; Exif.Image.Orientation =&gt; 1
&gt; digikam.general: Cancel Main Thread
&gt; digikam.general: Check for finish:  5 packages, 0 infos to filter, hasFinished() false
&gt; digikam.facesengine: detectMultiScale: image size  800   600  searchIncrement  1.1  grouping  3  flags  1  min size  26   26 
&gt; 
&gt; [Thread 0x7fff0081b700 (LWP 1902) exited]
&gt; 
&gt; Thread 101 &quot;Thread (pooled)&quot; received signal SIGSEGV, Segmentation fault.
&gt; [Switching to Thread 0x7fff32ae6700 (LWP 14013)]
&gt; 0x00007ffff7189598 in typeinfo for Digikam::LoadingTask () from /home/timo/tmp/digikam/source/core/app/libdigikamcore.so.6.0.0
&gt; (gdb) bt
&gt; #0  0x00007ffff7189598 in typeinfo for Digikam::LoadingTask () from /home/timo/tmp/digikam/source/core/app/libdigikamcore.so.6.0.0
&gt; #1  0x00007ffff64536aa in Digikam::PreviewLoadingTask::execute (this=0x4a78360)
&gt;     at /home/timo/tmp/digikam/source/core/libs/threadimageio/previewtask.cpp:407
&gt; #2  0x00007ffff643eece in Digikam::LoadSaveThread::run (this=0x7fffbc00dd00)
&gt;     at /home/timo/tmp/digikam/source/core/libs/threadimageio/loadsavethread.cpp:133
&gt; #3  0x00007ffff647d9be in Digikam::DynamicThread::Private::run (this=0x3708f20)
&gt;     at /home/timo/tmp/digikam/source/core/libs/threads/dynamicthread.cpp:183
&gt; #4  0x00007fffe9569602 in ?? () from /nix/store/br6yml05dzhccpaf4zi48vw3iw1xayzg-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #5  0x00007fffe957212b in ?? () from /nix/store/br6yml05dzhccpaf4zi48vw3iw1xayzg-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #6  0x00007ffff51d25a7 in start_thread () from /nix/store/fg4yq8i8wd08xg3fy58l6q73cjy8hjr2-glibc-2.27/lib/libpthread.so.0
&gt; #7  0x00007fffe6a4322f in clone () from /nix/store/fg4yq8i8wd08xg3fy58l6q73cjy8hjr2-glibc-2.27/lib/libc.so.6

&gt; digikam.facesengine: detectMultiScale gave  ()
&gt; digikam.facesengine: Verifying face  QRect(186,312 48x48)  using cascade  4
&gt; digikam.facesengine: detectMultiScale: image size  128   128  searchIncrement  1.1  grouping  3  flags  0  min size  29   29 
&gt; 
&gt; 
&gt; Thread 588 &quot;Thread (pooled)&quot; received signal SIGSEGV, Segmentation fault.
&gt; [Switching to Thread 0x7ffefaffd700 (LWP 9145)]
&gt; 0x00007fffe978d8b0 in QVariant::QVariant(QVariant const&amp;) ()
&gt;    from /nix/store/br6yml05dzhccpaf4zi48vw3iw1xayzg-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; (gdb) bt
&gt; #0  0x00007fffe978d8b0 in QVariant::QVariant(QVariant const&amp;) ()
&gt;    from /nix/store/br6yml05dzhccpaf4zi48vw3iw1xayzg-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #1  0x00007ffff6228dcb in QMapData&lt;QString, QVariant&gt;::createNode (left=false, parent=0x0, v=..., k=..., this=0x7ffee4232d40)
&gt;     at /nix/store/zah3h9qlxs79452a3g0pyrxb77i9zrw6-qtbase-5.11.1-dev/include/QtCore/qmap.h:230
&gt; #2  QMapNode&lt;QString, QVariant&gt;::copy (this=0x7ffee42082e0, d=d@entry=0x7ffee4232d40)
&gt;     at /nix/store/zah3h9qlxs79452a3g0pyrxb77i9zrw6-qtbase-5.11.1-dev/include/QtCore/qmap.h:258
&gt; #3  0x00007ffff6228e20 in QMapNode&lt;QString, QVariant&gt;::copy (this=0x7ffee4209880, d=d@entry=0x7ffee4232d40)
&gt;     at /nix/store/zah3h9qlxs79452a3g0pyrxb77i9zrw6-qtbase-5.11.1-dev/include/QtCore/qmap.h:261
&gt; #4  0x00007ffff6228ef2 in QMap&lt;QString, QVariant&gt;::detach_helper (this=0x48af2d8)
&gt;     at /nix/store/zah3h9qlxs79452a3g0pyrxb77i9zrw6-qtbase-5.11.1-dev/include/QtCore/qmap.h:1006
&gt; #5  QMap&lt;QString, QVariant&gt;::detach (this=0x48af2d8)
&gt;     at /nix/store/zah3h9qlxs79452a3g0pyrxb77i9zrw6-qtbase-5.11.1-dev/include/QtCore/qmap.h:364
&gt; #6  QMap&lt;QString, QVariant&gt;::insert (this=0x48af2d8, akey=..., avalue=...)
&gt;     at /nix/store/zah3h9qlxs79452a3g0pyrxb77i9zrw6-qtbase-5.11.1-dev/include/QtCore/qmap.h:704
&gt; #7  0x00007ffff6237a21 in Digikam::DImgLoader::uniqueHashV2 (filePath=..., img=img@entry=0x4cef698)
&gt;     at /home/timo/tmp/digikam/source/core/libs/dimg/loaders/dimgloader.cpp:364
&gt; #8  0x00007ffff6237d07 in Digikam::DImgLoader::createHistoryImageId (filePath=..., image=..., metadata=...)
&gt;     at /home/timo/tmp/digikam/source/core/libs/dimg/loaders/dimgloader.cpp:276
&gt; #9  0x00007ffff62381f3 in Digikam::DImgLoader::readMetadata (this=0x7ffefaffc8d0, filePath=...)
&gt;     at /home/timo/tmp/digikam/source/core/libs/dimg/loaders/dimgloader.cpp:224
&gt; #10 0x00007ffff623fce1 in Digikam::JPEGLoader::load (this=this@entry=0x7ffefaffc8d0, filePath=..., 
&gt;     observer=observer@entry=0x4cef4b0) at /home/timo/tmp/digikam/source/core/libs/dimg/loaders/jpegloader.cpp:92
&gt; #11 0x00007ffff6394130 in Digikam::DImg::load (this=this@entry=0x4cef698, filePath=..., loadFlagsInt=loadFlagsInt@entry=63, 
&gt;     observer=observer@entry=0x4cef4b0, rawDecodingSettings=...) at /home/timo/tmp/digikam/source/core/libs/dimg/dimg.cpp:429
&gt; #12 0x00007ffff6394730 in Digikam::DImg::load (this=this@entry=0x4cef698, filePath=..., observer=observer@entry=0x4cef4b0, 
&gt;     rawDecodingSettings=...) at /home/timo/tmp/digikam/source/core/libs/dimg/dimg.cpp:373
&gt; #13 0x00007ffff6453759 in Digikam::PreviewLoadingTask::execute (this=0x4cef4a0)
&gt;     at /home/timo/tmp/digikam/source/core/libs/threadimageio/previewtask.cpp:292
&gt; #14 0x00007ffff643eece in Digikam::LoadSaveThread::run (this=0x7fffbc007d70)
&gt;     at /home/timo/tmp/digikam/source/core/libs/threadimageio/loadsavethread.cpp:133
&gt; #15 0x00007ffff647d9be in Digikam::DynamicThread::Private::run (this=0x4e828a0)
&gt;     at /home/timo/tmp/digikam/source/core/libs/threads/dynamicthread.cpp:183
&gt; #16 0x00007fffe9569602 in ?? () from /nix/store/br6yml05dzhccpaf4zi48vw3iw1xayzg-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #17 0x00007fffe957212b in ?? () from /nix/store/br6yml05dzhccpaf4zi48vw3iw1xayzg-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #18 0x00007ffff51d25a7 in start_thread () from /nix/store/fg4yq8i8wd08xg3fy58l6q73cjy8hjr2-glibc-2.27/lib/libpthread.so.0
&gt; #19 0x00007fffe6a4322f in clone () from /nix/store/fg4yq8i8wd08xg3fy58l6q73cjy8hjr2-glibc-2.27/lib/libc.so.6</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1802133</commentid>
    <comment_count>50</comment_count>
    <who name="">timokau</who>
    <bug_when>2018-10-28 17:08:21 +0000</bug_when>
    <thetext>Splitting the comment because the bug tracker tells me it is spam otherwise.
Machine was under pretty heavy load memory-wise during the next one, so it may be caused by different reasons:

&gt; digikam.facesengine: detectMultiScale gave  (QRect(40,40 47x47))
&gt; digikam.facesengine: Verifying face  QRect(549,123 47x47)  using cascade  4
&gt; digikam.facesengine: detectMultiScale: image size  127   127  searchIncrement  1.1  grouping  3  flags  0  min size  28   28 
&gt; 
&gt; [Thread 0x7fff0ebe1700 (LWP 4402) exited]
&gt; 
&gt; Thread 1094 &quot;Thread (pooled)&quot; received signal SIGSEGV, Segmentation fault.
&gt; [Switching to Thread 0x7fff3dae2700 (LWP 31431)]
&gt; 0x00007fffe69ef626 in __memmove_sse2_unaligned_erms () from /nix/store/fg4yq8i8wd08xg3fy58l6q73cjy8hjr2-glibc-2.27/lib/libc.so.6
&gt; (gdb) bt
&gt; #0  0x00007fffe69ef626 in __memmove_sse2_unaligned_erms ()
&gt;    from /nix/store/fg4yq8i8wd08xg3fy58l6q73cjy8hjr2-glibc-2.27/lib/libc.so.6
&gt; #1  0x00007ffff639189b in memcpy (__len=&lt;optimized out&gt;, __src=&lt;optimized out&gt;, __dest=&lt;optimized out&gt;)
&gt;     at /nix/store/akak0rxhbi4n87z3nx78ipv76frvj841-glibc-2.27-dev/include/bits/string_fortified.h:34
&gt; #2  Digikam::DImg::detach (this=this@entry=0x4916288) at /home/timo/tmp/digikam/source/core/libs/dimg/dimg.cpp:217
&gt; #3  0x00007ffff645366c in Digikam::PreviewLoadingTask::execute (this=0x4916090)
&gt;     at /home/timo/tmp/digikam/source/core/libs/threadimageio/previewtask.cpp:376
&gt; #4  0x00007ffff643eece in Digikam::LoadSaveThread::run (this=0x3746ed0)
&gt;     at /home/timo/tmp/digikam/source/core/libs/threadimageio/loadsavethread.cpp:133
&gt; #5  0x00007ffff647d9be in Digikam::DynamicThread::Private::run (this=0x38b1700)
&gt;     at /home/timo/tmp/digikam/source/core/libs/threads/dynamicthread.cpp:183
&gt; #6  0x00007fffe9569602 in ?? () from /nix/store/br6yml05dzhccpaf4zi48vw3iw1xayzg-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #7  0x00007fffe957212b in ?? () from /nix/store/br6yml05dzhccpaf4zi48vw3iw1xayzg-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #8  0x00007ffff51d25a7 in start_thread () from /nix/store/fg4yq8i8wd08xg3fy58l6q73cjy8hjr2-glibc-2.27/lib/libpthread.so.0
&gt; #9  0x00007fffe6a4322f in clone () from /nix/store/fg4yq8i8wd08xg3fy58l6q73cjy8hjr2-glibc-2.27/lib/libc.so.6</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1802137</commentid>
    <comment_count>51</comment_count>
    <who name="">timokau</who>
    <bug_when>2018-10-28 17:09:55 +0000</bug_when>
    <thetext>&gt; digikam.general: Entry QRect(1371,1021 218x218)280overlapsQRect(1371,1021 218x218)280, skipping
&gt; 
&gt; Thread 27 &quot;Thread (pooled)&quot; received signal SIGSEGV, Segmentation fault.
&gt; [Switching to Thread 0x7fff1ffff700 (LWP 16402)]
&gt; QMapData&lt;QString, QVariant&gt;::createNode (left=false, parent=0x0, v=..., k=..., this=0x7fff081d6280)
&gt;     at /nix/store/zah3h9qlxs79452a3g0pyrxb77i9zrw6-qtbase-5.11.1-dev/include/QtCore/qmap.h:228
&gt; 228                 new (&amp;n-&gt;key) Key(k);
&gt; (gdb) bt
&gt; #0  QMapData&lt;QString, QVariant&gt;::createNode (left=false, parent=0x0, v=..., k=..., this=0x7fff081d6280)
&gt;     at /nix/store/zah3h9qlxs79452a3g0pyrxb77i9zrw6-qtbase-5.11.1-dev/include/QtCore/qmap.h:228
&gt; #1  QMapNode&lt;QString, QVariant&gt;::copy (this=0xb1, d=d@entry=0x7fff081d6280)
&gt;     at /nix/store/zah3h9qlxs79452a3g0pyrxb77i9zrw6-qtbase-5.11.1-dev/include/QtCore/qmap.h:258
&gt; #2  0x00007ffff6228e20 in QMapNode&lt;QString, QVariant&gt;::copy (this=0x7fff0807c180, d=d@entry=0x7fff081d6280)
&gt;     at /nix/store/zah3h9qlxs79452a3g0pyrxb77i9zrw6-qtbase-5.11.1-dev/include/QtCore/qmap.h:261
&gt; #3  0x00007ffff6228e20 in QMapNode&lt;QString, QVariant&gt;::copy (this=0x7fff0802a9b0, d=d@entry=0x7fff081d6280)
&gt;     at /nix/store/zah3h9qlxs79452a3g0pyrxb77i9zrw6-qtbase-5.11.1-dev/include/QtCore/qmap.h:261
&gt; #4  0x00007ffff6228ef2 in QMap&lt;QString, QVariant&gt;::detach_helper (this=0x4a578d8)
&gt;     at /nix/store/zah3h9qlxs79452a3g0pyrxb77i9zrw6-qtbase-5.11.1-dev/include/QtCore/qmap.h:1006
&gt; #5  QMap&lt;QString, QVariant&gt;::detach (this=0x4a578d8)
&gt;     at /nix/store/zah3h9qlxs79452a3g0pyrxb77i9zrw6-qtbase-5.11.1-dev/include/QtCore/qmap.h:364
&gt; #6  QMap&lt;QString, QVariant&gt;::insert (this=0x4a578d8, akey=..., avalue=...)
&gt;     at /nix/store/zah3h9qlxs79452a3g0pyrxb77i9zrw6-qtbase-5.11.1-dev/include/QtCore/qmap.h:704
&gt; #7  0x00007ffff62405c3 in Digikam::JPEGLoader::load (this=this@entry=0x7fff1fffe8d0, filePath=..., 
&gt;     observer=observer@entry=0x431fc70) at /home/timo/tmp/digikam/source/core/libs/dimg/loaders/jpegloader.cpp:663
&gt; #8  0x00007ffff6394130 in Digikam::DImg::load (this=this@entry=0x431fe58, filePath=..., loadFlagsInt=loadFlagsInt@entry=63, 
&gt;     observer=observer@entry=0x431fc70, rawDecodingSettings=...) at /home/timo/tmp/digikam/source/core/libs/dimg/dimg.cpp:429
&gt; #9  0x00007ffff6394730 in Digikam::DImg::load (this=this@entry=0x431fe58, filePath=..., observer=observer@entry=0x431fc70, 
&gt;     rawDecodingSettings=...) at /home/timo/tmp/digikam/source/core/libs/dimg/dimg.cpp:373
&gt; #10 0x00007ffff6453759 in Digikam::PreviewLoadingTask::execute (this=0x431fc60)
&gt;     at /home/timo/tmp/digikam/source/core/libs/threadimageio/previewtask.cpp:292
&gt; #11 0x00007ffff643eece in Digikam::LoadSaveThread::run (this=0x7fffbc00bfd0)
&gt;     at /home/timo/tmp/digikam/source/core/libs/threadimageio/loadsavethread.cpp:133
&gt; #12 0x00007ffff647d9be in Digikam::DynamicThread::Private::run (this=0x4482cb0)
&gt;     at /home/timo/tmp/digikam/source/core/libs/threads/dynamicthread.cpp:183
&gt; #13 0x00007fffe9569602 in ?? () from /nix/store/br6yml05dzhccpaf4zi48vw3iw1xayzg-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #14 0x00007fffe957212b in ?? () from /nix/store/br6yml05dzhccpaf4zi48vw3iw1xayzg-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #15 0x00007ffff51d25a7 in start_thread () from /nix/store/fg4yq8i8wd08xg3fy58l6q73cjy8hjr2-glibc-2.27/lib/libpthread.so.0
&gt; #16 0x00007fffe6a4322f in clone () from /nix/store/fg4yq8i8wd08xg3fy58l6q73cjy8hjr2-glibc-2.27/lib/libc.so.6</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1802148</commentid>
    <comment_count>52</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2018-10-28 19:25:11 +0000</bug_when>
    <thetext>Git commit 09266d5d2c97fa5554f32b022d2d62230f0bb061 by Maik Qualmann.
Committed on 28/10/2018 at 19:24.
Pushed by mqualmann into branch &apos;master&apos;.

only a QHash string key test

M  +2    -0    core/libs/threadimageio/loadingcache.cpp

https://commits.kde.org/digikam/09266d5d2c97fa5554f32b022d2d62230f0bb061</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1802149</commentid>
    <comment_count>53</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2018-10-28 19:28:35 +0000</bug_when>
    <thetext>You can find the output in the console:

digikam.general: imageFilePathHash Size: XX

I&apos;m interested in whether the value goes up or stays the same during facial recognition.

Maik</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1802163</commentid>
    <comment_count>54</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2018-10-28 20:59:33 +0000</bug_when>
    <thetext>Git commit 72c8e61d48a3dd9b17eca6449cab9c7ba192ce3b by Maik Qualmann.
Committed on 28/10/2018 at 20:58.
Pushed by mqualmann into branch &apos;master&apos;.

add Q_ASSERT to test if PreviewLoadingTask is running when destructor is called

M  +4    -1    core/libs/threadimageio/loadsavetask.h
M  +4    -0    core/libs/threadimageio/previewtask.cpp

https://commits.kde.org/digikam/72c8e61d48a3dd9b17eca6449cab9c7ba192ce3b</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1802777</commentid>
    <comment_count>55</comment_count>
    <who name="">timokau</who>
    <bug_when>2018-10-29 09:54:50 +0000</bug_when>
    <thetext>The size changes: https://gist.github.com/timokau/484001d2242c31a8daa0676befb06a20

This was on the 3rd try, the first two actually went through the whole test without crashing. On the first two I didn&apos;t have any previews visible, on the 3rd I only had them visible near the end (clicked on &quot;People&quot; to view all the face previews). So probably/maybe it doesn&apos;t crash when not displaying previews while scanning.

Did&apos;t test 72c8e61d48a3dd9b17eca6449cab9c7ba192ce3b yet.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1802784</commentid>
    <comment_count>56</comment_count>
    <who name="">timokau</who>
    <bug_when>2018-10-29 10:55:30 +0000</bug_when>
    <thetext>With 72c8e61d48a3dd9b17eca6449cab9c7ba192ce3b:

&gt; digikam.facesengine: detectMultiScale gave  ()
&gt; digikam.general: Found 0 faces in &quot;IMG-20130707-WA0000.jpg&quot; QSize(800, 479) QSize(800, 479)
&gt; digikam.facesengine: detectMultiScale: image size  800   600  searchIncrement  1.1  grouping  3  flags  1  min size  26   26 
&gt; 
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; [Thread 0x7fff10805700 (LWP 4133) exited]
&gt; 
&gt; Thread 1227 &quot;Thread (pooled)&quot; received signal SIGSEGV, Segmentation fault.
&gt; [Switching to Thread 0x7fff037fe700 (LWP 13593)]
&gt; 0x00007ffff6236738 in Digikam::DImgLoader::granularity (this=0x7fff037fd8d0, observer=0x4e9c9e8, 
&gt;     total=1920, progressSlice=&lt;optimized out&gt;)
&gt;     at /home/timo/tmp/digikam/source/core/libs/dimg/loaders/dimgloader.cpp:81
&gt; 81              granularity = (int)((total / (20 * progressSlice)) / observer-&gt;granularity());
&gt; (gdb) bt
&gt; #0  0x00007ffff6236738 in Digikam::DImgLoader::granularity (this=0x7fff037fd8d0, observer=0x4e9c9e8, total=1920, 
&gt;     progressSlice=&lt;optimized out&gt;) at /home/timo/tmp/digikam/source/core/libs/dimg/loaders/dimgloader.cpp:81
&gt; #1  0x00007ffff62411ad in Digikam::JPEGLoader::load (this=this@entry=0x7fff037fd8d0, filePath=..., 
&gt;     observer=observer@entry=0x4e9c9e8) at /home/timo/tmp/digikam/source/core/libs/dimg/loaders/jpegloader.cpp:460
&gt; #2  0x00007ffff6394130 in Digikam::DImg::load (this=this@entry=0x4e9cbd0, filePath=..., loadFlagsInt=loadFlagsInt@entry=63, 
&gt;     observer=observer@entry=0x4e9c9e8, rawDecodingSettings=...) at /home/timo/tmp/digikam/source/core/libs/dimg/dimg.cpp:429
&gt; #3  0x00007ffff6394730 in Digikam::DImg::load (this=this@entry=0x4e9cbd0, filePath=..., observer=observer@entry=0x4e9c9e8, 
&gt;     rawDecodingSettings=...) at /home/timo/tmp/digikam/source/core/libs/dimg/dimg.cpp:373
&gt; #4  0x00007ffff6453899 in Digikam::PreviewLoadingTask::execute (this=0x4e9c9d0)
&gt;     at /home/timo/tmp/digikam/source/core/libs/threadimageio/previewtask.cpp:294
&gt; #5  0x00007ffff643eeee in Digikam::LoadSaveThread::run (this=0x49031c0)
&gt;     at /home/timo/tmp/digikam/source/core/libs/threadimageio/loadsavethread.cpp:133
&gt; #6  0x00007ffff647dafe in Digikam::DynamicThread::Private::run (this=0x40cbc40)
&gt;     at /home/timo/tmp/digikam/source/core/libs/threads/dynamicthread.cpp:183
&gt; #7  0x00007fffe9569602 in ?? () from /nix/store/br6yml05dzhccpaf4zi48vw3iw1xayzg-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #8  0x00007fffe957212b in ?? () from /nix/store/br6yml05dzhccpaf4zi48vw3iw1xayzg-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #9  0x00007ffff51d25a7 in start_thread () from /nix/store/fg4yq8i8wd08xg3fy58l6q73cjy8hjr2-glibc-2.27/lib/libpthread.so.0
&gt; #10 0x00007fffe6a4322f in clone () from /nix/store/fg4yq8i8wd08xg3fy58l6q73cjy8hjr2-glibc-2.27/lib/libc.so.6</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1802785</commentid>
    <comment_count>57</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2018-10-29 11:40:38 +0000</bug_when>
    <thetext>Ok, thanks first. It does not stop where I possibly expected it. But this image &quot;IMG-20130707-WA0000.jpg&quot; is already involved twice in a crash. Of course it can also be a image in front of or behind, because we pre-load images in the background. Maybe take a look.

Maik</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1802800</commentid>
    <comment_count>58</comment_count>
      <attachid>115962</attachid>
    <who name="">timokau</who>
    <bug_when>2018-10-29 13:36:03 +0000</bug_when>
    <thetext>Created attachment 115962
Suspicious image

What do you want me to test with that image?

I just checked and its nothing personal, just some random photo of a screen (because who takes screenshots anymore amiright?). I&apos;ve attached it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1817526</commentid>
    <comment_count>59</comment_count>
    <who name="">timokau</who>
    <bug_when>2018-11-17 13:10:29 +0000</bug_when>
    <thetext>Is there something I can do to move this forward?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1817544</commentid>
    <comment_count>60</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2018-11-17 13:54:46 +0000</bug_when>
    <thetext>Can the problem still be reproduced with the current git/master version? Gilles has protected many Exiv2 calls with QMutexLocker because Exiv2 is not thread safe. A current bugtrace would be good.

Maik</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1818225</commentid>
    <comment_count>61</comment_count>
    <who name="">timokau</who>
    <bug_when>2018-11-18 12:31:28 +0000</bug_when>
    <thetext>For some reason I can&apos;t run the digikam I&apos;ve build from source anymore. Not sure what I&apos;m doing wrong. I&apos;m working from a fresh digikam clone at revision 42f181311373002eb464b5dea67b714974a7dc7d&quot;. First I remove all leftover state from previous runs:

&gt; rm -f ~/pictures/*.db
&gt; rm -f ~/.config/digikamrc
&gt; rm -rf ~/.local/share/digikam
&gt; rm -rf ~/.cache/digikam

Then I cd into the digikam source folder and run

&gt; cmake -DCMAKE_INSTALL_PREFIX=/home/timo/tmp/res -DCMAKE_BUILD_TYPE=debug
&gt; make -j4
&gt; core/app/digikam

Which first lets me select the folder my collection is in and then crashes with

&gt; digikam.general: AlbumWatch use QFileSystemWatcher
&gt; digikam.general: Database Parameters:
&gt;    Type:                     &quot;QSQLITE&quot;
&gt;    DB Core Name:             &quot;/home/timo/pictures/digikam4.db&quot;
&gt;    DB Thumbs Name:           &quot;/home/timo/pictures/thumbnails-digikam.db&quot;
&gt;    DB Face Name:             &quot;/home/timo/pictures/recognition.db&quot;
&gt;    DB Similarity Name:      &quot;/home/timo/pictures/similarity.db&quot;
&gt;    Connect Options:          &quot;&quot;
&gt;    Host Name:                &quot;&quot;
&gt;    Host port:                -1
&gt;    Internal Server:          false
&gt;    Internal Server Path:     &quot;&quot;
&gt;    Internal Server Serv Cmd: &quot;&quot;
&gt;    Internal Server Init Cmd: &quot;&quot;
&gt;    Username:                 &quot;&quot;
&gt;    Password:                 &quot;&quot;
&gt; 
&gt; digikam.dbengine: Loading SQL code from config file &quot;&quot;
&gt; digikam.dbengine: &quot;Could not open the configuration file &lt;b&gt;&lt;/b&gt;. This file is installed with the digikam application and is absolutely required to run digikam. Please check your installation.&quot;
&gt; KMemoryInfo: Platform identified :  &quot;LINUX&quot;
&gt; KMemoryInfo: TotalRam:  12467781632
&gt; digikam.general: Allowing a cache size of 200 MB
&gt; digikam.dimg: The bundled profile &quot;digikam/profiles/srgb-d65.icm&quot; cannot be found. Check your installation.

As far as I understand its looking for `dbconfig.xml`, which is present in `core/data/database/dbconfig.xml`. Any idea whats going wrong?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1818425</commentid>
    <comment_count>62</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2018-11-19 09:58:51 +0000</bug_when>
    <thetext>The dbconfig.xml can not be found in the installed system, mostly under /usr/share/digikam/database. We use QStandardPaths to find them in the system.

Maik</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1819293</commentid>
    <comment_count>63</comment_count>
    <who name="">timokau</who>
    <bug_when>2018-11-20 13:30:03 +0000</bug_when>
    <thetext>Okay for some reason it runs now, not sure why. It does still crash, but with a new error:

&gt; digikam.dimg: &quot;/home/timo/Pictures/pictures/Pictures/Android/Camera/IMG_20140623_173958.jpg&quot;  : JPEG file identified
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; double free or corruption (!prev)
&gt; ---Type &lt;return&gt; to continue, or q &lt;return&gt; to quit---
&gt; 
&gt; Thread 11 &quot;Thread (pooled)&quot; received signal SIGABRT, Aborted.
&gt; [Switching to Thread 0x7fff5bfff700 (LWP 29681)]
&gt; 0x00007fffe697dbe0 in raise () from /nix/store/g2yk54hifqlsjiha3szr4q3ccmdzyrdv-glibc-2.27/lib/libc.so.6
&gt; (gdb) bt
&gt; #0  0x00007fffe697dbe0 in raise () from /nix/store/g2yk54hifqlsjiha3szr4q3ccmdzyrdv-glibc-2.27/lib/libc.so.6
&gt; #1  0x00007fffe697edc1 in abort () from /nix/store/g2yk54hifqlsjiha3szr4q3ccmdzyrdv-glibc-2.27/lib/libc.so.6
&gt; #2  0x00007fffe69bf2ac in __libc_message () from /nix/store/g2yk54hifqlsjiha3szr4q3ccmdzyrdv-glibc-2.27/lib/libc.so.6
&gt; #3  0x00007fffe69c549a in malloc_printerr () from /nix/store/g2yk54hifqlsjiha3szr4q3ccmdzyrdv-glibc-2.27/lib/libc.so.6
&gt; #4  0x00007fffe69c63ec in _int_free () from /nix/store/g2yk54hifqlsjiha3szr4q3ccmdzyrdv-glibc-2.27/lib/libc.so.6
&gt; #5  0x00007ffff638ca6d in Digikam::DImg::rotate (this=0x532eab8, angle=angle@entry=Digikam::DImg::ROT90) at /home/timo/tmp/source/core/libs/dimg/dimg.cpp:2329
&gt; #6  0x00007ffff638cca7 in Digikam::DImg::rotateAndFlip (this=this@entry=0x532eab8, orientation=&lt;optimized out&gt;) at /home/timo/tmp/source/core/libs/dimg/dimg.cpp:2653
&gt; #7  0x00007ffff645c91a in Digikam::LoadSaveThread::exifRotate (image=..., filePath=...) at /home/timo/tmp/source/core/libs/threadimageio/fileio/loadsavethread.cpp:335
&gt; #8  0x00007ffff64452cd in Digikam::PreviewLoadingTask::execute (this=0x532e8c0) at /home/timo/tmp/source/core/libs/threadimageio/preview/previewtask.cpp:402
&gt; #9  0x00007ffff645c69e in Digikam::LoadSaveThread::run (this=0x7fffbc014870) at /home/timo/tmp/source/core/libs/threadimageio/fileio/loadsavethread.cpp:133
&gt; #10 0x00007ffff647e1ce in Digikam::DynamicThread::Private::run (this=0x2c75790) at /home/timo/tmp/source/core/libs/threads/dynamicthread.cpp:183
&gt; #11 0x00007fffe9560602 in ?? () from /nix/store/r6n4b9crppc0rmrr2z46xkqa87agydqy-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #12 0x00007fffe956912b in ?? () from /nix/store/r6n4b9crppc0rmrr2z46xkqa87agydqy-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #13 0x00007ffff51cc5a7 in start_thread () from /nix/store/g2yk54hifqlsjiha3szr4q3ccmdzyrdv-glibc-2.27/lib/libpthread.so.0
&gt; #14 0x00007fffe6a3b22f in clone () from /nix/store/g2yk54hifqlsjiha3szr4q3ccmdzyrdv-glibc-2.27/lib/libc.so.6</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1819329</commentid>
    <comment_count>64</comment_count>
    <who name="">timokau</who>
    <bug_when>2018-11-20 18:15:15 +0000</bug_when>
    <thetext>Another backtrace:

&gt; digikam.general: Check for finish:  24 packages, 0 infos to filter, hasFinished() false
&gt; digikam.dimg: &quot;/home/timo/Pictures/pictures/Pictures/Android/Pictures/EVERNOTE/IMG_20140206_173437.565.jpg&quot;  : JPEG file identified
&gt; digikam.dimg: &quot;/home/timo/Pictures/pictures/Pictures/Android/Whatsapp/IMG-20140510-WA0002.jpg&quot;  : JPEG file identified
&gt; digikam.dimg: &quot;/home/timo/Pictures/pictures/Pictures/Android/Whatsapp/IMG-20140510-WA0001.jpg&quot;  : JPEG file identified
&gt; digikam.dimg: &quot;/home/timo/Pictures/pictures/Pictures/Android/Whatsapp/IMG-20140510-WA0000.jpg&quot;  : JPEG file identified
&gt; 
&gt; Thread 24 &quot;Thread (pooled)&quot; received signal SIGSEGV, Segmentation fault.
&gt; [Switching to Thread 0x7fff3effd700 (LWP 3844)]
&gt; 0x00007ffff6468a47 in Digikam::LoadingTask::progressInfo (this=0x3cdf000, img=0x3cdf1f8, progress=0.699999988)
&gt;     at /home/timo/tmp/source/core/libs/threadimageio/fileio/loadsavetask.cpp:65
&gt; 65              if (m_thread &amp;&amp; m_thread-&gt;querySendNotifyEvent())
&gt; (gdb) bt
&gt; #0  0x00007ffff6468a47 in Digikam::LoadingTask::progressInfo (this=0x3cdf000, img=0x3cdf1f8, progress=0.699999988)
&gt;     at /home/timo/tmp/source/core/libs/threadimageio/fileio/loadsavetask.cpp:65
&gt; #1  0x00007ffff623d1e0 in Digikam::JPEGLoader::load (this=this@entry=0x7fff3effc8d0, filePath=..., observer=observer@entry=0x3cdf010)
&gt;     at /home/timo/tmp/source/core/libs/dimg/loaders/jpegloader.cpp:470
&gt; #2  0x00007ffff63901a0 in Digikam::DImg::load (this=this@entry=0x3cdf1f8, filePath=..., loadFlagsInt=loadFlagsInt@entry=63, observer=observer@entry=0x3cdf010, 
&gt;     rawDecodingSettings=...) at /home/timo/tmp/source/core/libs/dimg/dimg.cpp:429
&gt; #3  0x00007ffff63907a0 in Digikam::DImg::load (this=this@entry=0x3cdf1f8, filePath=..., observer=observer@entry=0x3cdf010, rawDecodingSettings=...)
&gt;     at /home/timo/tmp/source/core/libs/dimg/dimg.cpp:373
&gt; #4  0x00007ffff6445095 in Digikam::PreviewLoadingTask::execute (this=0x3cdf000) at /home/timo/tmp/source/core/libs/threadimageio/preview/previewtask.cpp:292
&gt; #5  0x00007ffff645c69e in Digikam::LoadSaveThread::run (this=0x39d1cc0) at /home/timo/tmp/source/core/libs/threadimageio/fileio/loadsavethread.cpp:133
&gt; #6  0x00007ffff647e1ce in Digikam::DynamicThread::Private::run (this=0x4417d80) at /home/timo/tmp/source/core/libs/threads/dynamicthread.cpp:183
&gt; #7  0x00007fffe9560602 in ?? () from /nix/store/r6n4b9crppc0rmrr2z46xkqa87agydqy-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #8  0x00007fffe956912b in ?? () from /nix/store/r6n4b9crppc0rmrr2z46xkqa87agydqy-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #9  0x00007ffff51cc5a7 in start_thread () from /nix/store/g2yk54hifqlsjiha3szr4q3ccmdzyrdv-glibc-2.27/lib/libpthread.so.0
&gt; #10 0x00007fffe6a3b22f in clone () from /nix/store/g2yk54hifqlsjiha3szr4q3ccmdzyrdv-glibc-2.27/lib/libc.so.6</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1819356</commentid>
    <comment_count>65</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2018-11-20 20:27:01 +0000</bug_when>
    <thetext>Git commit d3e91e5c150c61392c5edb8eb93c5bd30aa54e22 by Maik Qualmann.
Committed on 20/11/2018 at 20:25.
Pushed by mqualmann into branch &apos;master&apos;.

try to fix a possible deletion of DImg through QCache

M  +9    -1    core/libs/threadimageio/fileio/loadingcache.cpp

https://commits.kde.org/digikam/d3e91e5c150c61392c5edb8eb93c5bd30aa54e22</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1819369</commentid>
    <comment_count>66</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2018-11-20 21:39:52 +0000</bug_when>
    <thetext>Git commit 84b51860e7327094c574f41ae0f91ccbdb6b1e9a by Maik Qualmann.
Committed on 20/11/2018 at 21:38.
Pushed by mqualmann into branch &apos;master&apos;.

use QSharedPointer for the QCache

M  +32   -19   core/libs/threadimageio/fileio/loadingcache.cpp

https://commits.kde.org/digikam/84b51860e7327094c574f41ae0f91ccbdb6b1e9a</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1819378</commentid>
    <comment_count>67</comment_count>
    <who name="">timokau</who>
    <bug_when>2018-11-20 22:32:30 +0000</bug_when>
    <thetext>No luck:

&gt; digikam.general: Removing old entries ()
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.general: Removing old entries ()
&gt; digikam.facesengine: detectMultiScale gave  ()
&gt; digikam.general: Found 0 faces in &quot;2013-11-01 20.36.26-3.jpg&quot; QSize(400, 225) QSize(400, 225)
&gt; digikam.facesengine: detectMultiScale: image size  400   225  searchIncrement  1.1  grouping  3  flags  1  min size  0   0 
&gt; 
&gt; digikam.metaengine: Exif color-space tag is sRGB. Using default sRGB ICC profile.
&gt; digikam.general: Removing old entries ()
&gt; 
&gt; Thread 77 &quot;Thread (pooled)&quot; received signal SIGSEGV, Segmentation fault.
&gt; [Switching to Thread 0x7fff1bffe700 (LWP 29247)]
&gt; 0x00007ffff648d1f7 in Digikam::LoadingTask::progressInfo (this=0x412efb0, img=0x412f1a8, progress=0.300000012)
&gt;     at /home/timo/tmp/source/core/libs/threadimageio/fileio/loadsavetask.cpp:65
&gt; 65              if (m_thread &amp;&amp; m_thread-&gt;querySendNotifyEvent())
&gt; (gdb) bt
&gt; #0  0x00007ffff648d1f7 in Digikam::LoadingTask::progressInfo (this=0x412efb0, img=0x412f1a8, progress=0.300000012)
&gt;     at /home/timo/tmp/source/core/libs/threadimageio/fileio/loadsavetask.cpp:65
&gt; #1  0x00007ffff6261900 in Digikam::JPEGLoader::load (this=this@entry=0x7fff1bffd8d0, filePath=..., observer=observer@entry=0x412efc0)
&gt;     at /home/timo/tmp/source/core/libs/dimg/loaders/jpegloader.cpp:470
&gt; #2  0x00007ffff63b48c0 in Digikam::DImg::load (this=this@entry=0x412f1a8, filePath=..., loadFlagsInt=loadFlagsInt@entry=63, observer=observer@entry=0x412efc0, 
&gt;     rawDecodingSettings=...) at /home/timo/tmp/source/core/libs/dimg/dimg.cpp:429
&gt; #3  0x00007ffff63b4ec0 in Digikam::DImg::load (this=this@entry=0x412f1a8, filePath=..., observer=observer@entry=0x412efc0, rawDecodingSettings=...)
&gt;     at /home/timo/tmp/source/core/libs/dimg/dimg.cpp:373
&gt; #4  0x00007ffff64697b5 in Digikam::PreviewLoadingTask::execute (this=0x412efb0) at /home/timo/tmp/source/core/libs/threadimageio/preview/previewtask.cpp:292
&gt; #5  0x00007ffff6480dbe in Digikam::LoadSaveThread::run (this=0x430f2b0) at /home/timo/tmp/source/core/libs/threadimageio/fileio/loadsavethread.cpp:133
&gt; #6  0x00007ffff64a297e in Digikam::DynamicThread::Private::run (this=0x3e75ad0) at /home/timo/tmp/source/core/libs/threads/dynamicthread.cpp:183
&gt; #7  0x00007fffe958f602 in ?? () from /nix/store/r6n4b9crppc0rmrr2z46xkqa87agydqy-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #8  0x00007fffe959812b in ?? () from /nix/store/r6n4b9crppc0rmrr2z46xkqa87agydqy-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #9  0x00007ffff51fb5a7 in start_thread () from /nix/store/g2yk54hifqlsjiha3szr4q3ccmdzyrdv-glibc-2.27/lib/libpthread.so.0
&gt; #10 0x00007fffe6a6a22f in clone () from /nix/store/g2yk54hifqlsjiha3szr4q3ccmdzyrdv-glibc-2.27/lib/libc.so.6</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1820450</commentid>
    <comment_count>68</comment_count>
    <who name="">timokau</who>
    <bug_when>2018-11-21 09:22:06 +0000</bug_when>
    <thetext>Just now noticed that you pushed two commits, didn&apos;t test the second one yet.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1820527</commentid>
    <comment_count>69</comment_count>
    <who name="">timokau</who>
    <bug_when>2018-11-21 14:56:07 +0000</bug_when>
    <thetext>Unfortunately that didn&apos;t solve it either:

&gt; digikam.facesengine: detectMultiScale gave  (QRect(33,67 125x75))
&gt; digikam.general: Found 1 faces in &quot;IMG-20140822-WA0032.jpg&quot; QSize(1456, 832) QSize(1456, 832)
&gt; digikam.facesengine: detectMultiScale: image size  457   800  searchIncrement  1.1  grouping  3  flags  1  min size  26   26 
&gt; 
&gt; digikam.general: Removing old entries ()
&gt; digikam.dimg: &quot;/home/timo/Pictures/pictures/Pictures/Abitur 2015/Bilder Mottowoche &amp; Abisturm, Abitur 2015/Bilder von Judith Meding/Abisturm/IMG_7567.JPG&quot;  : JPEG file identified
&gt; [New Thread 0x7fff2cbdd700 (LWP 14968)]
&gt; 
&gt; Thread 24 &quot;Thread (pooled)&quot; received signal SIGSEGV, Segmentation fault.
&gt; [Switching to Thread 0x7fff3ffff700 (LWP 7144)]
&gt; 0x00007ffff648c867 in Digikam::LoadingTask::progressInfo (this=0x3937ab0, img=0x3937ca8, progress=0.395999998)
&gt;     at /home/timo/tmp/source/core/libs/threadimageio/fileio/loadsavetask.cpp:65
&gt; 65              if (m_thread &amp;&amp; m_thread-&gt;querySendNotifyEvent())
&gt; (gdb) 
&gt; (gdb) bt
&gt; #0  0x00007ffff648c867 in Digikam::LoadingTask::progressInfo (this=0x3937ab0, img=0x3937ca8, progress=0.395999998)
&gt;     at /home/timo/tmp/source/core/libs/threadimageio/fileio/loadsavetask.cpp:65
&gt; #1  0x00007ffff6260850 in Digikam::JPEGLoader::load (this=this@entry=0x7fff3fffe8d0, filePath=..., observer=observer@entry=0x3937ac0)
&gt;     at /home/timo/tmp/source/core/libs/dimg/loaders/jpegloader.cpp:470
&gt; #2  0x00007ffff63b3810 in Digikam::DImg::load (this=this@entry=0x3937ca8, filePath=..., loadFlagsInt=loadFlagsInt@entry=63, observer=observer@entry=0x3937ac0, 
&gt;     rawDecodingSettings=...) at /home/timo/tmp/source/core/libs/dimg/dimg.cpp:429
&gt; #3  0x00007ffff63b3e10 in Digikam::DImg::load (this=this@entry=0x3937ca8, filePath=..., observer=observer@entry=0x3937ac0, rawDecodingSettings=...)
&gt;     at /home/timo/tmp/source/core/libs/dimg/dimg.cpp:373
&gt; #4  0x00007ffff6468705 in Digikam::PreviewLoadingTask::execute (this=0x3937ab0) at /home/timo/tmp/source/core/libs/threadimageio/preview/previewtask.cpp:292
&gt; #5  0x00007ffff647fd0e in Digikam::LoadSaveThread::run (this=0x37a54f0) at /home/timo/tmp/source/core/libs/threadimageio/fileio/loadsavethread.cpp:133
&gt; #6  0x00007ffff64a1fee in Digikam::DynamicThread::Private::run (this=0x3fbeb10) at /home/timo/tmp/source/core/libs/threads/dynamicthread.cpp:183
&gt; #7  0x00007fffe958e602 in ?? () from /nix/store/r6n4b9crppc0rmrr2z46xkqa87agydqy-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #8  0x00007fffe959712b in ?? () from /nix/store/r6n4b9crppc0rmrr2z46xkqa87agydqy-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #9  0x00007ffff51fa5a7 in start_thread () from /nix/store/g2yk54hifqlsjiha3szr4q3ccmdzyrdv-glibc-2.27/lib/libpthread.so.0
&gt; #10 0x00007fffe6a6922f in clone () from /nix/store/g2yk54hifqlsjiha3szr4q3ccmdzyrdv-glibc-2.27/lib/libc.so.6</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1820588</commentid>
    <comment_count>70</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2018-11-21 19:46:13 +0000</bug_when>
    <thetext>Git commit 92403db2394a0acbc0e49a36db5bf0d119d36208 by Maik Qualmann.
Committed on 21/11/2018 at 19:44.
Pushed by mqualmann into branch &apos;master&apos;.

try to fix wrong overloaded function call

M  +4    -2    core/libs/threadimageio/fileio/loadsavetask.cpp
M  +1    -1    core/libs/threadimageio/fileio/loadsavetask.h
M  +8    -8    core/libs/threadimageio/preview/previewtask.cpp

https://commits.kde.org/digikam/92403db2394a0acbc0e49a36db5bf0d119d36208</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1820590</commentid>
    <comment_count>71</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2018-11-21 19:47:37 +0000</bug_when>
    <thetext>You can also watch the messages on the console, you should not see this message:

!!!!!!!!!!!!!!!!!!!!!! Wrong function called !!!!!!!!!!!!!!!!!!!!!!

Maik</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1820967</commentid>
    <comment_count>72</comment_count>
    <who name="">timokau</who>
    <bug_when>2018-11-24 10:07:52 +0000</bug_when>
    <thetext>Looks like we&apos;re on the right track! At first I got the `double free` error again (unfortunately didn&apos;t save the backtrace). In that run &quot;Wrong function called&quot; did not occur in the log.

But then I tried again and got the usual segfault. This time Wrong function called *did* occur in the log exactly once immediately before the segfault:

&gt; digikam.general: Found 0 faces in &quot;Ostsee[...]065.JPG&quot; QSize(3264, 2448) QSize(3264, 2448)
&gt; digikam.database: Search result: 3309
&gt; digikam.general: Removing old entries ()
&gt; digikam.facesengine: detectMultiScale: image size  800   600  searchIncrement  1.1  grouping  3  flags  1  min size  26   26 
&gt; 
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.dimg: &quot;/home/timo/Pictures/pictures/Pictures/[...]Ostsee[...]083.JPG&quot;  : JPEG file identified
&gt; digikam.general: !!!!!!!!!!!!!!!!!!!!!! Wrong function called !!!!!!!!!!!!!!!!!!!!!!
&gt; digikam.general: Cancel Main Thread
&gt; 
&gt; Thread 476 &quot;Thread (pooled)&quot; received signal SIGSEGV, Segmentation fault.
&gt; [Switching to Thread 0x7fff3deaf700 (LWP 13902)]
&gt; 0xffffffffffffffff in ?? ()
&gt; (gdb) bt
&gt; #0  0xffffffffffffffff in ?? ()
&gt; #1  0x00007ffff648c9bc in Digikam::LoadingTask::progressInfo (this=0x314b320, img=&lt;optimized out&gt;, progress=0.850000024)
&gt;     at /home/timo/tmp/source/core/libs/threadimageio/fileio/loadsavetask.cpp:67
&gt; #2  0x00007ffff6260850 in Digikam::JPEGLoader::load (this=this@entry=0x7fff3deae8d0, filePath=..., observer=observer@entry=0x314b330)
&gt;     at /home/timo/tmp/source/core/libs/dimg/loaders/jpegloader.cpp:470
&gt; #3  0x00007ffff63b3810 in Digikam::DImg::load (this=this@entry=0x314b518, filePath=..., loadFlagsInt=loadFlagsInt@entry=63, observer=observer@entry=0x314b330, 
&gt;     rawDecodingSettings=...) at /home/timo/tmp/source/core/libs/dimg/dimg.cpp:429
&gt; #4  0x00007ffff63b3e10 in Digikam::DImg::load (this=this@entry=0x314b518, filePath=..., observer=observer@entry=0x314b330, rawDecodingSettings=...)
&gt;     at /home/timo/tmp/source/core/libs/dimg/dimg.cpp:373
&gt; #5  0x00007ffff6468736 in Digikam::PreviewLoadingTask::execute (this=0x314b320) at /home/timo/tmp/source/core/libs/threadimageio/preview/previewtask.cpp:292
&gt; #6  0x00007ffff647fd3e in Digikam::LoadSaveThread::run (this=0x3d58b60) at /home/timo/tmp/source/core/libs/threadimageio/fileio/loadsavethread.cpp:133
&gt; #7  0x00007ffff64a213e in Digikam::DynamicThread::Private::run (this=0x3d5ab60) at /home/timo/tmp/source/core/libs/threads/dynamicthread.cpp:183
&gt; #8  0x00007fffe958e602 in ?? () from /nix/store/r6n4b9crppc0rmrr2z46xkqa87agydqy-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #9  0x00007fffe959712b in ?? () from /nix/store/r6n4b9crppc0rmrr2z46xkqa87agydqy-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #10 0x00007ffff51fa5a7 in start_thread () from /nix/store/g2yk54hifqlsjiha3szr4q3ccmdzyrdv-glibc-2.27/lib/libpthread.so.0
&gt; #11 0x00007fffe6a6922f in clone () from /nix/store/g2yk54hifqlsjiha3szr4q3ccmdzyrdv-glibc-2.27/lib/libc.so.6
&gt; (gdb)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1821005</commentid>
    <comment_count>73</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2018-11-24 16:05:58 +0000</bug_when>
    <thetext>And this is exactly the point where I am lost. Because this function call should never, never absolutely. Either we have a memory corruption or some system problem with you. The LoadingTask::progressInfo() function gets overloaded and never should the overloaded function called at run time. I do not know if Gilles still has an idea. Otherwise I would try a dynamic cast of the &quot;this&quot; pointer.

Maik</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1821006</commentid>
    <comment_count>74</comment_count>
    <who name="">caulier.gilles</who>
    <bug_when>2018-11-24 16:08:23 +0000</bug_when>
    <thetext>Lets&apos; me take a look 

Gilles</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1821007</commentid>
    <comment_count>75</comment_count>
    <who name="">caulier.gilles</who>
    <bug_when>2018-11-24 16:10:54 +0000</bug_when>
    <thetext>Maik,

The question is why the method LoadingTask::progressInfo() is called in this case. Right ?

Gilles</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1821008</commentid>
    <comment_count>76</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2018-11-24 16:13:01 +0000</bug_when>
    <thetext>Git commit b62cd3fb48ae14498c10eb10ef7d06c277c54115 by Maik Qualmann.
Committed on 24/11/2018 at 16:11.
Pushed by mqualmann into branch &apos;master&apos;.

try with a dynamic cast

M  +4    -2    core/libs/threadimageio/preview/previewtask.cpp

https://commits.kde.org/digikam/b62cd3fb48ae14498c10eb10ef7d06c277c54115</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1821009</commentid>
    <comment_count>77</comment_count>
    <who name="">caulier.gilles</who>
    <bug_when>2018-11-24 16:15:39 +0000</bug_when>
    <thetext>As i can see in the backtrace, the context of this method call is correct, at least...

Gilles</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1821010</commentid>
    <comment_count>78</comment_count>
    <who name="">caulier.gilles</who>
    <bug_when>2018-11-24 16:20:16 +0000</bug_when>
    <thetext>Maik,

Warning. A dynamic cast result must always be checked for null. cppcheck will certainly report a problem here.

So you need to check the validity pointer before to use it, or somewhere in called function.

Gilles</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1821013</commentid>
    <comment_count>79</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2018-11-24 16:25:02 +0000</bug_when>
    <thetext>Yes, I know, I will remove the code if it does not help.

Maik</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1821015</commentid>
    <comment_count>80</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2018-11-24 16:26:09 +0000</bug_when>
    <thetext>The progressInfo() function is called from the image loaders as DImgLoaderObserver when loading image progress. We have the simple LoadingTask::progressInfo() overloaded by the SharedLoadingTask::progressInfo(). The PreviewLoadingTask is derived from the SharedLoadingTask. Therefore, progressInfo() should always be executed by the SharedLoadingTask.

Maik</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1821020</commentid>
    <comment_count>81</comment_count>
    <who name="">caulier.gilles</who>
    <bug_when>2018-11-24 16:39:43 +0000</bug_when>
    <thetext>Right. 

The Q_DECL_OVERRIDE can perhaps help here if it applied to SharedLoadingTask::progressInfo() virtual method declaration...

But if yes, i don&apos;t understand why. The compiler must do the job properly as well...


Gilles Caulier</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1821023</commentid>
    <comment_count>82</comment_count>
    <who name="">caulier.gilles</who>
    <bug_when>2018-11-24 16:41:28 +0000</bug_when>
    <thetext>timokau,

Which compiler version do you use exactly ? GCC or Clang ?

Gilles Caulier</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1821024</commentid>
    <comment_count>83</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2018-11-24 16:48:48 +0000</bug_when>
    <thetext>Hmm, the compiler does it right. It goes well thousands of times, it happens at runtime... I fantasize a bit, an Intel Spectra kernel patch problem...?

Maik</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1821026</commentid>
    <comment_count>84</comment_count>
    <who name="">timokau</who>
    <bug_when>2018-11-24 16:51:21 +0000</bug_when>
    <thetext>gcc 7.3.0.

(The latest attempt is still compiling)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1821051</commentid>
    <comment_count>85</comment_count>
    <who name="">timokau</who>
    <bug_when>2018-11-24 20:09:54 +0000</bug_when>
    <thetext>Didn&apos;t help :/

&gt; digikam.dimg: &quot;/home/timo/Pictures/pictures/Pictures/Android/Whatsapp/IMG-20140322-WA0003.jpg&quot;  : JPEG file identified
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.general: !!!!!!!!!!!!!!!!!!!!!! Wrong function called !!!!!!!!!!!!!!!!!!!!!!
&gt; digikam.database: &quot; ( ( (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=?  ) ) &quot;
&gt; digikam.database: Search query:
&gt;  &quot;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=?  ) )  );&quot; 
&gt;  (QVariant(int, 275), QVariant(int, 275), QVariant(QString, &quot;autodetectedPerson&quot;), QVariant(int, 275), QVariant(int, 275), QVariant(QString, &quot;autodetectedFace&quot;), QVariant(int, 275), QVariant(int, 275), QVariant(QString, &quot;tagRegion&quot;))
&gt; digikam.facesengine: detectMultiScale gave  ()
&gt; digikam.general: Found 0 faces in &quot;IMG-20140304-WA0000.jpg&quot; QSize(480, 854) QSize(480, 854)
&gt; digikam.database: Search result: 4962
&gt; digikam.general: Removing old entries ()
&gt; digikam.facesengine: detectMultiScale: image size  800   600  searchIncrement  1.1  grouping  3  flags  1  min size  26   26 
&gt; 
&gt; Thread 24 &quot;Thread (pooled)&quot; received signal SIGSEGV, Segmentation fault.
&gt; [Switching to Thread 0x7fff589e4700 (LWP 1327)]
&gt; 0x00007ffff648c9b6 in Digikam::LoadingTask::progressInfo (this=0x3ec51b0, img=&lt;optimized out&gt;, progress=0.100000001)
&gt;     at /home/timo/tmp/source/core/libs/threadimageio/fileio/loadsavetask.cpp:67
&gt; 67              if (m_thread &amp;&amp; m_thread-&gt;querySendNotifyEvent())
&gt; (gdb) bt
&gt; #0  0x00007ffff648c9b6 in Digikam::LoadingTask::progressInfo (this=0x3ec51b0, img=&lt;optimized out&gt;, progress=0.100000001)
&gt;     at /home/timo/tmp/source/core/libs/threadimageio/fileio/loadsavetask.cpp:67
&gt; #1  0x00007ffff626046a in Digikam::JPEGLoader::load (this=this@entry=0x7fff589e38d0, filePath=..., observer=observer@entry=0x3ec51c0)
&gt;     at /home/timo/tmp/source/core/libs/dimg/loaders/jpegloader.cpp:374
&gt; #2  0x00007ffff63b3810 in Digikam::DImg::load (this=this@entry=0x3ec53a8, filePath=..., loadFlagsInt=loadFlagsInt@entry=63, observer=observer@entry=0x3ec51c0, 
&gt;     rawDecodingSettings=...) at /home/timo/tmp/source/core/libs/dimg/dimg.cpp:429
&gt; #3  0x00007ffff63b3e10 in Digikam::DImg::load (this=this@entry=0x3ec53a8, filePath=..., observer=observer@entry=0x3ec51c0, rawDecodingSettings=...)
&gt;     at /home/timo/tmp/source/core/libs/dimg/dimg.cpp:373
&gt; #4  0x00007ffff6468736 in Digikam::PreviewLoadingTask::execute (this=0x3ec51b0) at /home/timo/tmp/source/core/libs/threadimageio/preview/previewtask.cpp:293
&gt; #5  0x00007ffff647fd3e in Digikam::LoadSaveThread::run (this=0x7fffbc00c400) at /home/timo/tmp/source/core/libs/threadimageio/fileio/loadsavethread.cpp:133
&gt; #6  0x00007ffff64a213e in Digikam::DynamicThread::Private::run (this=0x3f41490) at /home/timo/tmp/source/core/libs/threads/dynamicthread.cpp:183
&gt; #7  0x00007fffe958e602 in ?? () from /nix/store/r6n4b9crppc0rmrr2z46xkqa87agydqy-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #8  0x00007fffe959712b in ?? () from /nix/store/r6n4b9crppc0rmrr2z46xkqa87agydqy-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #9  0x00007ffff51fa5a7 in start_thread () from /nix/store/g2yk54hifqlsjiha3szr4q3ccmdzyrdv-glibc-2.27/lib/libpthread.so.0
&gt; #10 0x00007fffe6a6922f in clone () from /nix/store/g2yk54hifqlsjiha3szr4q3ccmdzyrdv-glibc-2.27/lib/libc.so.6
&gt; (gdb)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1821058</commentid>
    <comment_count>86</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2018-11-24 20:28:39 +0000</bug_when>
    <thetext>Git commit e2f5717e14f29b71832dd541faa27c64dedfd0c4 by Maik Qualmann.
Committed on 24/11/2018 at 20:27.
Pushed by mqualmann into branch &apos;master&apos;.

remove dynamic cast and try with Q_DECL_OVERRIDE

M  +11   -11   core/libs/threadimageio/fileio/loadsavetask.h
M  +2    -4    core/libs/threadimageio/preview/previewtask.cpp
M  +1    -1    core/libs/threadimageio/preview/previewtask.h

https://commits.kde.org/digikam/e2f5717e14f29b71832dd541faa27c64dedfd0c4</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1821077</commentid>
    <comment_count>87</comment_count>
    <who name="">timokau</who>
    <bug_when>2018-11-24 23:09:15 +0000</bug_when>
    <thetext>&quot;Bus error&quot;, thats a new one:

&gt; digikam.general: Removing old entries ()
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.facesengine: detectMultiScale gave  ()
&gt; digikam.general: Found 0 faces in &quot;2_5309997771762172030.png&quot; QSize(1236, 781) QSize(1236, 781)
&gt; digikam.general: Removing old entries ()
&gt; digikam.facesengine: detectMultiScale: image size  475   800  searchIncrement  1.1  grouping  3  flags  1  min size  26   26 
&gt; 
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; 
&gt; Thread 29 &quot;Thread (pooled)&quot; received signal SIGBUS, Bus error.
&gt; [Switching to Thread 0x7fff3effd700 (LWP 29373)]
&gt; QMapData&lt;QString, QVariant&gt;::createNode (left=false, parent=0x0, v=..., k=..., this=0x7fff080024b0)
&gt;     at /nix/store/yd5wgc2yaz8biynyjxsh743xyh7bnr77-qtbase-5.11.1-dev/include/QtCore/qmap.h:228
&gt; 228                 new (&amp;n-&gt;key) Key(k);
&gt; (gdb) 
&gt; (gdb) bt
&gt; #0  QMapData&lt;QString, QVariant&gt;::createNode (left=false, parent=0x0, v=..., k=..., this=0x7fff080024b0)
&gt;     at /nix/store/yd5wgc2yaz8biynyjxsh743xyh7bnr77-qtbase-5.11.1-dev/include/QtCore/qmap.h:228
&gt; #1  QMapNode&lt;QString, QVariant&gt;::copy (this=0x7243656d69542e32, d=d@entry=0x7fff080024b0)
&gt;     at /nix/store/yd5wgc2yaz8biynyjxsh743xyh7bnr77-qtbase-5.11.1-dev/include/QtCore/qmap.h:258
&gt; #2  0x00007ffff6248462 in QMap&lt;QString, QVariant&gt;::detach_helper (this=0x3f18a18) at /nix/store/yd5wgc2yaz8biynyjxsh743xyh7bnr77-qtbase-5.11.1-dev/include/QtCore/qmap.h:1006
&gt; #3  QMap&lt;QString, QVariant&gt;::detach (this=0x3f18a18) at /nix/store/yd5wgc2yaz8biynyjxsh743xyh7bnr77-qtbase-5.11.1-dev/include/QtCore/qmap.h:364
&gt; #4  QMap&lt;QString, QVariant&gt;::insert (this=0x3f18a18, akey=..., avalue=...) at /nix/store/yd5wgc2yaz8biynyjxsh743xyh7bnr77-qtbase-5.11.1-dev/include/QtCore/qmap.h:704
&gt; #5  0x00007ffff6256f91 in Digikam::DImgLoader::uniqueHashV2 (filePath=..., img=img@entry=0x4b97c48) at /home/timo/tmp/source/core/libs/dimg/loaders/dimgloader.cpp:364
&gt; #6  0x00007ffff6257277 in Digikam::DImgLoader::createHistoryImageId (filePath=..., image=..., metadata=...)
&gt;     at /home/timo/tmp/source/core/libs/dimg/loaders/dimgloader.cpp:276
&gt; #7  0x00007ffff6257763 in Digikam::DImgLoader::readMetadata (this=0x7fff3effc8d0, filePath=...) at /home/timo/tmp/source/core/libs/dimg/loaders/dimgloader.cpp:224
&gt; #8  0x00007ffff625f251 in Digikam::JPEGLoader::load (this=this@entry=0x7fff3effc8d0, filePath=..., observer=observer@entry=0x4b97a60)
&gt;     at /home/timo/tmp/source/core/libs/dimg/loaders/jpegloader.cpp:92
&gt; #9  0x00007ffff63b3810 in Digikam::DImg::load (this=this@entry=0x4b97c48, filePath=..., loadFlagsInt=loadFlagsInt@entry=63, observer=observer@entry=0x4b97a60, 
&gt;     rawDecodingSettings=...) at /home/timo/tmp/source/core/libs/dimg/dimg.cpp:429
&gt; #10 0x00007ffff63b3e10 in Digikam::DImg::load (this=this@entry=0x4b97c48, filePath=..., observer=observer@entry=0x4b97a60, rawDecodingSettings=...)
&gt;     at /home/timo/tmp/source/core/libs/dimg/dimg.cpp:373
&gt; #11 0x00007ffff6468736 in Digikam::PreviewLoadingTask::execute (this=0x4b97a50) at /home/timo/tmp/source/core/libs/threadimageio/preview/previewtask.cpp:292
&gt; #12 0x00007ffff647fd3e in Digikam::LoadSaveThread::run (this=0x39aa620) at /home/timo/tmp/source/core/libs/threadimageio/fileio/loadsavethread.cpp:133
&gt; #13 0x00007ffff64a213e in Digikam::DynamicThread::Private::run (this=0x5971220) at /home/timo/tmp/source/core/libs/threads/dynamicthread.cpp:183
&gt; #14 0x00007fffe958e602 in ?? () from /nix/store/r6n4b9crppc0rmrr2z46xkqa87agydqy-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #15 0x00007fffe959712b in ?? () from /nix/store/r6n4b9crppc0rmrr2z46xkqa87agydqy-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #16 0x00007ffff51fa5a7 in start_thread () from /nix/store/g2yk54hifqlsjiha3szr4q3ccmdzyrdv-glibc-2.27/lib/libpthread.so.0
&gt; #17 0x00007fffe6a6922f in clone () from /nix/store/g2yk54hifqlsjiha3szr4q3ccmdzyrdv-glibc-2.27/lib/libc.so.6
&gt; (gdb)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1821101</commentid>
    <comment_count>88</comment_count>
    <who name="">timokau</who>
    <bug_when>2018-11-25 09:21:00 +0000</bug_when>
    <thetext>Ran it again, got `SIGABRT` this time. No `Wrong function called` in the logs.

&gt; digikam.general: Using  4  CPU core to run threads
&gt; digikam.general: Action Thread run  1  new jobs
&gt; digikam.dimg: &quot;/home/timo/Pictures/pictures/Pictures/[...]/IMG_2038.jpg&quot;  : JPEG file identified
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.general: Removing old entries ()
&gt; double free or corruption (out)
&gt; digikam.database: &quot; ( ( (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=?  ) ) &quot;
&gt; digikam.database: Search query:
&gt;  &quot;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=?  ) )  );&quot; 
&gt;  (QVariant(int, 275), QVariant(int, 275), QVariant(QString, &quot;autodetectedPerson&quot;), QVariant(int, 275), QVariant(int, 275), QVariant(QString, &quot;autodetectedFace&quot;), QVariant(int, 275), QVariant(int, 275), QVariant(QString, &quot;tagRegion&quot;))
&gt; 
&gt; Thread 3775 &quot;Thread (pooled)&quot; received signal SIGABRT, Aborted.
&gt; [Switching to Thread 0x7fff36042700 (LWP 7943)]
&gt; 0x00007fffe69abbe0 in raise () from /nix/store/g2yk54hifqlsjiha3szr4q3ccmdzyrdv-glibc-2.27/lib/libc.so.6
&gt; (gdb) bt
&gt; #0  0x00007fffe69abbe0 in raise () from /nix/store/g2yk54hifqlsjiha3szr4q3ccmdzyrdv-glibc-2.27/lib/libc.so.6
&gt; #1  0x00007fffe69acdc1 in abort () from /nix/store/g2yk54hifqlsjiha3szr4q3ccmdzyrdv-glibc-2.27/lib/libc.so.6
&gt; #2  0x00007fffe69ed2ac in __libc_message () from /nix/store/g2yk54hifqlsjiha3szr4q3ccmdzyrdv-glibc-2.27/lib/libc.so.6
&gt; #3  0x00007fffe69f349a in malloc_printerr () from /nix/store/g2yk54hifqlsjiha3szr4q3ccmdzyrdv-glibc-2.27/lib/libc.so.6
&gt; #4  0x00007fffe69f43e0 in _int_free () from /nix/store/g2yk54hifqlsjiha3szr4q3ccmdzyrdv-glibc-2.27/lib/libc.so.6
&gt; #5  0x00007ffff63b00dd in Digikam::DImg::rotate (this=0x40d91f8, angle=angle@entry=Digikam::DImg::ROT90) at /home/timo/tmp/source/core/libs/dimg/dimg.cpp:2329
&gt; #6  0x00007ffff63b0317 in Digikam::DImg::rotateAndFlip (this=this@entry=0x40d91f8, orientation=&lt;optimized out&gt;) at /home/timo/tmp/source/core/libs/dimg/dimg.cpp:2653
&gt; #7  0x00007ffff647ffba in Digikam::LoadSaveThread::exifRotate (image=..., filePath=...) at /home/timo/tmp/source/core/libs/threadimageio/fileio/loadsavethread.cpp:335
&gt; #8  0x00007ffff646896d in Digikam::PreviewLoadingTask::execute (this=0x40d9000) at /home/timo/tmp/source/core/libs/threadimageio/preview/previewtask.cpp:402
&gt; #9  0x00007ffff647fd3e in Digikam::LoadSaveThread::run (this=0x46f5830) at /home/timo/tmp/source/core/libs/threadimageio/fileio/loadsavethread.cpp:133
&gt; #10 0x00007ffff64a213e in Digikam::DynamicThread::Private::run (this=0x3fba940) at /home/timo/tmp/source/core/libs/threads/dynamicthread.cpp:183
&gt; #11 0x00007fffe958e602 in ?? () from /nix/store/r6n4b9crppc0rmrr2z46xkqa87agydqy-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #12 0x00007fffe959712b in ?? () from /nix/store/r6n4b9crppc0rmrr2z46xkqa87agydqy-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #13 0x00007ffff51fa5a7 in start_thread () from /nix/store/g2yk54hifqlsjiha3szr4q3ccmdzyrdv-glibc-2.27/lib/libpthread.so.0
&gt; #14 0x00007fffe6a6922f in clone () from /nix/store/g2yk54hifqlsjiha3szr4q3ccmdzyrdv-glibc-2.27/lib/libc.so.6</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1821103</commentid>
    <comment_count>89</comment_count>
    <who name="">timokau</who>
    <bug_when>2018-11-25 10:16:07 +0000</bug_when>
    <thetext>And another try gives a segfault again, with &quot;Wrong function called&quot;:

&gt; digikam.general: Found 0 faces in &quot;2013-10-21 20.52.47.jpg&quot; QSize(2448, 3264) QSize(2448, 3264)
&gt; digikam.general: Using  4  CPU core to run threads
&gt; digikam.general: Action Thread run  1  new jobs
&gt; digikam.database: &quot; ( ( (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=?  ) ) &quot;
&gt; digikam.database: Search query:
&gt;  &quot;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=?  ) )  );&quot; 
&gt;  (QVariant(int, 18), QVariant(int, 18), QVariant(QString, &quot;autodetectedPerson&quot;), QVariant(int, 18), QVariant(int, 18), QVariant(QString, &quot;autodetectedFace&quot;), QVariant(int, 18), QVariant(int, 18), QVariant(QString, &quot;tagRegion&quot;))
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.dimg: &quot;/home/timo/Pictures/pictures/Pictures/Kamera-Uploads/2013-11-01 19.26.53.jpg&quot;  : JPEG file identified
&gt; digikam.general: !!!!!!!!!!!!!!!!!!!!!! Wrong function called !!!!!!!!!!!!!!!!!!!!!!
&gt; digikam.general: !!!!!!!!!!!!!!!!!!!!!! Wrong function called !!!!!!!!!!!!!!!!!!!!!!
&gt; digikam.facesengine: detectMultiScale: image size  600   800  searchIncrement  1.1  grouping  3  flags  1  min size  26   26 
&gt; 
&gt; digikam.general: !!!!!!!!!!!!!!!!!!!!!! Wrong function called !!!!!!!!!!!!!!!!!!!!!!
&gt; 
&gt; Thread 1435 &quot;Thread (pooled)&quot; received signal SIGSEGV, Segmentation fault.
&gt; [Switching to Thread 0x7fff349bd700 (LWP 8535)]
&gt; 0x00007ffe00000002 in ?? ()
&gt; (gdb) bt
&gt; #0  0x00007ffe00000002 in ?? ()
&gt; #1  0x00007ffff3e4f56d in Exiv2::ExifKey::clone() const () from /nix/store/8ikn9snq812jrhx74daix6siza40j01h-exiv2-0.26.2018.06.09/lib/libexiv2.so.26
&gt; #2  0x00007ffff3de0772 in Exiv2::Exifdatum::Exifdatum(Exiv2::Exifdatum const&amp;) () from /nix/store/8ikn9snq812jrhx74daix6siza40j01h-exiv2-0.26.2018.06.09/lib/libexiv2.so.26
&gt; #3  0x00007ffff63de55d in __gnu_cxx::new_allocator&lt;std::_List_node&lt;Exiv2::Exifdatum&gt; &gt;::construct&lt;Exiv2::Exifdatum, Exiv2::Exifdatum const&amp;&gt; (this=&lt;optimized out&gt;, 
&gt;     __p=&lt;optimized out&gt;) at /nix/store/6qmfmricr58bjivgr16y9sjisakdykag-gcc-7.3.0/include/c++/7.3.0/ext/new_allocator.h:136
&gt; #4  std::allocator_traits&lt;std::allocator&lt;std::_List_node&lt;Exiv2::Exifdatum&gt; &gt; &gt;::construct&lt;Exiv2::Exifdatum, Exiv2::Exifdatum const&amp;&gt; (__a=..., __p=&lt;optimized out&gt;)
&gt;     at /nix/store/6qmfmricr58bjivgr16y9sjisakdykag-gcc-7.3.0/include/c++/7.3.0/bits/alloc_traits.h:475
&gt; #5  std::__cxx11::list&lt;Exiv2::Exifdatum, std::allocator&lt;Exiv2::Exifdatum&gt; &gt;::_M_create_node&lt;Exiv2::Exifdatum const&amp;&gt; (this=0x7fff349bc060)
&gt;     at /nix/store/6qmfmricr58bjivgr16y9sjisakdykag-gcc-7.3.0/include/c++/7.3.0/bits/stl_list.h:575
&gt; #6  std::__cxx11::list&lt;Exiv2::Exifdatum, std::allocator&lt;Exiv2::Exifdatum&gt; &gt;::_M_insert&lt;Exiv2::Exifdatum const&amp;&gt; (__position=..., this=0x7fff349bc060)
&gt;     at /nix/store/6qmfmricr58bjivgr16y9sjisakdykag-gcc-7.3.0/include/c++/7.3.0/bits/stl_list.h:1801
&gt; #7  std::__cxx11::list&lt;Exiv2::Exifdatum, std::allocator&lt;Exiv2::Exifdatum&gt; &gt;::emplace_back&lt;Exiv2::Exifdatum const&amp;&gt; (this=0x7fff349bc060)
&gt;     at /nix/store/6qmfmricr58bjivgr16y9sjisakdykag-gcc-7.3.0/include/c++/7.3.0/bits/stl_list.h:1133
&gt; #8  std::__cxx11::list&lt;Exiv2::Exifdatum, std::allocator&lt;Exiv2::Exifdatum&gt; &gt;::_M_initialize_dispatch&lt;std::_List_const_iterator&lt;Exiv2::Exifdatum&gt; &gt; (__last=..., __first=..., 
&gt;     this=0x7fff349bc060) at /nix/store/6qmfmricr58bjivgr16y9sjisakdykag-gcc-7.3.0/include/c++/7.3.0/bits/stl_list.h:1730
&gt; #9  std::__cxx11::list&lt;Exiv2::Exifdatum, std::allocator&lt;Exiv2::Exifdatum&gt; &gt;::list (__x=..., this=0x7fff349bc060)
&gt;     at /nix/store/6qmfmricr58bjivgr16y9sjisakdykag-gcc-7.3.0/include/c++/7.3.0/bits/stl_list.h:655
&gt; #10 Exiv2::ExifData::ExifData (this=0x7fff349bc060) at /nix/store/g6j077w01akw84403iwag4smqv6vsgzv-exiv2-0.26.2018.06.09-dev/include/exiv2/exif.hpp:438
&gt; #11 Digikam::MetaEngine::getExifTagData (this=this@entry=0x7fff349bc160, exifTagName=exifTagName@entry=0x7ffff6cddd55 &quot;Exif.Image.InterColorProfile&quot;)
&gt;     at /home/timo/tmp/source/core/libs/metadataengine/engine/metaengine_exif.cpp:682
&gt; #12 0x00007ffff641b474 in Digikam::DMetadata::getIccProfile (this=this@entry=0x7fff349bc160)
&gt;     at /home/timo/tmp/source/core/libs/metadataengine/dmetadata/dmetadata_exif.cpp:85
&gt; #13 0x00007ffff6256aef in Digikam::DImgLoader::checkExifWorkingColorSpace (this=this@entry=0x7fff349bc8d0) at /home/timo/tmp/source/core/libs/dimg/loaders/dimgloader.cpp:291
&gt; #14 0x00007ffff6260296 in Digikam::JPEGLoader::load (this=this@entry=0x7fff349bc8d0, filePath=..., observer=observer@entry=0x3af2a10)
&gt;     at /home/timo/tmp/source/core/libs/dimg/loaders/jpegloader.cpp:637
&gt; #15 0x00007ffff63b3810 in Digikam::DImg::load (this=this@entry=0x3af2bf8, filePath=..., loadFlagsInt=loadFlagsInt@entry=63, observer=observer@entry=0x3af2a10, 
&gt;     rawDecodingSettings=...) at /home/timo/tmp/source/core/libs/dimg/dimg.cpp:429
&gt; #16 0x00007ffff63b3e10 in Digikam::DImg::load (this=this@entry=0x3af2bf8, filePath=..., observer=observer@entry=0x3af2a10, rawDecodingSettings=...)
&gt;     at /home/timo/tmp/source/core/libs/dimg/dimg.cpp:373
&gt; #17 0x00007ffff6468736 in Digikam::PreviewLoadingTask::execute (this=0x3af2a00) at /home/timo/tmp/source/core/libs/threadimageio/preview/previewtask.cpp:292
&gt; #18 0x00007ffff647fd3e in Digikam::LoadSaveThread::run (this=0x7fffbc00d590) at /home/timo/tmp/source/core/libs/threadimageio/fileio/loadsavethread.cpp:133
&gt; #19 0x00007ffff64a213e in Digikam::DynamicThread::Private::run (this=0x42a3de0) at /home/timo/tmp/source/core/libs/threads/dynamicthread.cpp:183
&gt; #20 0x00007fffe958e602 in ?? () from /nix/store/r6n4b9crppc0rmrr2z46xkqa87agydqy-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #21 0x00007fffe959712b in ?? () from /nix/store/r6n4b9crppc0rmrr2z46xkqa87agydqy-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #22 0x00007ffff51fa5a7 in start_thread () from /nix/store/g2yk54hifqlsjiha3szr4q3ccmdzyrdv-glibc-2.27/lib/libpthread.so.0
&gt; #23 0x00007fffe6a6922f in clone () from /nix/store/g2yk54hifqlsjiha3szr4q3ccmdzyrdv-glibc-2.27/lib/libc.so.6</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1821108</commentid>
    <comment_count>90</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2018-11-25 10:52:03 +0000</bug_when>
    <thetext>Git commit c67c7a92fc68bdbd2adee91d37e18310382f0d6b by Maik Qualmann.
Committed on 25/11/2018 at 10:51.
Pushed by mqualmann into branch &apos;master&apos;.

add test debug message and Q_ASSERT

M  +4    -0    core/libs/threadimageio/preview/previewtask.cpp

https://commits.kde.org/digikam/c67c7a92fc68bdbd2adee91d37e18310382f0d6b</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1821115</commentid>
    <comment_count>91</comment_count>
    <who name="">caulier.gilles</who>
    <bug_when>2018-11-25 12:36:44 +0000</bug_when>
    <thetext>Maik,

Perhaps the best way to try to catch exactly the problem is to isolate the threadimageio code used by Face management in an unit test, and to run this code around a large set of images to parse.

This can reveal (or not) some problems. If you can reproduce the problem with an unit test, this want mean certainly that problem is more in-deep in face management level, as i suspect. The crash in preview code is just a side effect due to memory corruption. After an analyze of current code, i don&apos;t understand why the wrong virtual method is called in place.

The advantage to use QTest API is that lots of tools available from CLI to proof, benchmark, and hack the code while running. The integration with KDE CI  following all commit permit to check is somebody has broken something in core API.

Look my recent work with meta-engine unit tests, used to consolidate the Exiv2 interface.

Gilles</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1821122</commentid>
    <comment_count>92</comment_count>
    <who name="">timokau</who>
    <bug_when>2018-11-25 13:41:55 +0000</bug_when>
    <thetext>SIGABRT again, with `loadingTaskStatus` always `false true`.

&gt; digikam.general: ------------&gt; loadingTaskStatus: false true
&gt; digikam.dimg: &quot;/home/timo/Pictures/pictures/Pictures/Android/Camera/IMG_20140623_173958.jpg&quot;  : JPEG file identified
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; QPainter::begin: Paint device returned engine == 0, type: 2
&gt; QPainter::setCompositionMode: Painter not active
&gt; QPainter::end: Painter not active, aborted
&gt; QPainter::begin: Paint device returned engine == 0, type: 2
&gt; QPainter::setCompositionMode: Painter not active
&gt; QPainter::end: Painter not active, aborted
&gt; QPainter::begin: Paint device returned engine == 0, type: 2
&gt; QPainter::setCompositionMode: Painter not active
&gt; QPainter::end: Painter not active, aborted
&gt; digikam.facesengine: detectMultiScale: image size  800   600  searchIncrement  1.1  grouping  3  flags  1  min size  26   26 
&gt; 
&gt; QPainter::begin: Paint device returned engine == 0, type: 2
&gt; QPainter::setCompositionMode: Painter not active
&gt; QPainter::end: Painter not active, aborted
&gt; QPainter::begin: Paint device returned engine == 0, type: 2
&gt; QPainter::setCompositionMode: Painter not active
&gt; QPainter::end: Painter not active, aborted
&gt; double free or corruption (!prev)
&gt; 
&gt; Thread 27 &quot;Thread (pooled)&quot; received signal SIGABRT, Aborted.
&gt; [Switching to Thread 0x7fff5a9e8700 (LWP 24238)]
&gt; 0x00007fffe69abbe0 in raise () from /nix/store/g2yk54hifqlsjiha3szr4q3ccmdzyrdv-glibc-2.27/lib/libc.so.6
&gt; (gdb) bt
&gt; #0  0x00007fffe69abbe0 in raise () from /nix/store/g2yk54hifqlsjiha3szr4q3ccmdzyrdv-glibc-2.27/lib/libc.so.6
&gt; #1  0x00007fffe69acdc1 in abort () from /nix/store/g2yk54hifqlsjiha3szr4q3ccmdzyrdv-glibc-2.27/lib/libc.so.6
&gt; #2  0x00007fffe69ed2ac in __libc_message () from /nix/store/g2yk54hifqlsjiha3szr4q3ccmdzyrdv-glibc-2.27/lib/libc.so.6
&gt; #3  0x00007fffe69f349a in malloc_printerr () from /nix/store/g2yk54hifqlsjiha3szr4q3ccmdzyrdv-glibc-2.27/lib/libc.so.6
&gt; #4  0x00007fffe69f43ec in _int_free () from /nix/store/g2yk54hifqlsjiha3szr4q3ccmdzyrdv-glibc-2.27/lib/libc.so.6
&gt; #5  0x00007ffff63b00dd in Digikam::DImg::rotate (this=0x287b478, angle=angle@entry=Digikam::DImg::ROT90) at /home/timo/tmp/source/core/libs/dimg/dimg.cpp:2329
&gt; #6  0x00007ffff63b0317 in Digikam::DImg::rotateAndFlip (this=this@entry=0x287b478, orientation=&lt;optimized out&gt;) at /home/timo/tmp/source/core/libs/dimg/dimg.cpp:2653
&gt; #7  0x00007ffff648012a in Digikam::LoadSaveThread::exifRotate (image=..., filePath=...) at /home/timo/tmp/source/core/libs/threadimageio/fileio/loadsavethread.cpp:335
&gt; #8  0x00007ffff6468ad4 in Digikam::PreviewLoadingTask::execute (this=0x287b280) at /home/timo/tmp/source/core/libs/threadimageio/preview/previewtask.cpp:406
&gt; #9  0x00007ffff647feae in Digikam::LoadSaveThread::run (this=0x3ae5b10) at /home/timo/tmp/source/core/libs/threadimageio/fileio/loadsavethread.cpp:133
&gt; #10 0x00007ffff64a22ae in Digikam::DynamicThread::Private::run (this=0x3aecc40) at /home/timo/tmp/source/core/libs/threads/dynamicthread.cpp:183
&gt; #11 0x00007fffe958e602 in ?? () from /nix/store/r6n4b9crppc0rmrr2z46xkqa87agydqy-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #12 0x00007fffe959712b in ?? () from /nix/store/r6n4b9crppc0rmrr2z46xkqa87agydqy-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #13 0x00007ffff51fa5a7 in start_thread () from /nix/store/g2yk54hifqlsjiha3szr4q3ccmdzyrdv-glibc-2.27/lib/libpthread.so.0
&gt; #14 0x00007fffe6a6922f in clone () from /nix/store/g2yk54hifqlsjiha3szr4q3ccmdzyrdv-glibc-2.27/lib/libc.so.6
&gt; (gdb)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1821140</commentid>
    <comment_count>93</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2018-11-25 17:01:57 +0000</bug_when>
    <thetext>Git commit 45d25606fe419766678774259e5610501face598 by Maik Qualmann.
Committed on 25/11/2018 at 17:01.
Pushed by mqualmann into branch &apos;master&apos;.

try with a debug check for deleted preview task

M  +4    -1    core/libs/threadimageio/fileio/loadsavetask.h
M  +8    -0    core/libs/threadimageio/preview/previewtask.cpp

https://commits.kde.org/digikam/45d25606fe419766678774259e5610501face598</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1821177</commentid>
    <comment_count>94</comment_count>
    <who name="">timokau</who>
    <bug_when>2018-11-25 20:52:08 +0000</bug_when>
    <thetext>`PreviewLoadingTaskIsDeleted` is always `false`, at all points.

&gt; digikam.general: ------&gt; Point 3 - PreviewLoadingTask is deleted: false
&gt; digikam.general: Cannot extract preview for &quot;/home/timo/Pictures/pictures/images/Telegram Documents/4_532581008470442788.mp4&quot;
&gt; digikam.facesengine: detectMultiScale gave  ()
&gt; digikam.general: Found 0 faces in &quot;2_5422666759779909661.jpg&quot; QSize(540, 960) QSize(540, 960)
&gt; digikam.general: Removing old entries ()
&gt; digikam.facesengine: detectMultiScale: image size  800   533  searchIncrement  1.1  grouping  3  flags  1  min size  26   26 
&gt; 
&gt; Thread 25 &quot;Thread (pooled)&quot; received signal SIGSEGV, Segmentation fault.
&gt; [Switching to Thread 0x7fff3f7fe700 (LWP 16867)]
&gt; 0x00007ffff648be66 in Digikam::LoadingTask::progressInfo (this=0x386aa40, 
&gt;     img=&lt;optimized out&gt;, progress=0.899999976)
&gt;     at /home/timo/tmp/source/core/libs/threadimageio/fileio/loadsavetask.cpp:67
&gt; 67              if (m_thread &amp;&amp; m_thread-&gt;querySendNotifyEvent())
&gt; (gdb) bt
&gt; #0  0x00007ffff648be66 in Digikam::LoadingTask::progressInfo (this=0x386aa40, img=&lt;optimized out&gt;, progress=0.89999
&gt; 9976)
&gt;     at /home/timo/tmp/source/core/libs/threadimageio/fileio/loadsavetask.cpp:67
&gt; #1  0x00007ffff6267999 in Digikam::QImageLoader::load (this=this@entry=0x7fff3f7fd8d0, filePath=..., observer=obser
&gt; ver@entry=0x386aa58)
&gt;     at /home/timo/tmp/source/core/libs/dimg/loaders/qimageloader.cpp:62
&gt; #2  0x00007ffff63b2074 in Digikam::DImg::load (this=this@entry=0x386ac40, filePath=..., loadFlagsInt=loadFlagsInt@e
&gt; ntry=63, observer=observer@entry=0x386aa58, 
&gt;     rawDecodingSettings=...) at /home/timo/tmp/source/core/libs/dimg/dimg.cpp:565
&gt; #3  0x00007ffff63b2e10 in Digikam::DImg::load (this=this@entry=0x386ac40, filePath=..., observer=observer@entry=0x386aa58, rawDecodingSettings=...)
&gt;     at /home/timo/tmp/source/core/libs/dimg/dimg.cpp:373
&gt; #4  0x00007ffff64679c9 in Digikam::PreviewLoadingTask::execute (this=0x386aa40) at /home/timo/tmp/source/core/libs/threadimageio/preview/previewtask.cpp:296
&gt; #5  0x00007ffff647f1ee in Digikam::LoadSaveThread::run (this=0x387b980) at /home/timo/tmp/source/core/libs/threadimageio/fileio/loadsavethread.cpp:133
&gt; #6  0x00007ffff64a15ee in Digikam::DynamicThread::Private::run (this=0x3724c90) at /home/timo/tmp/source/core/libs/threads/dynamicthread.cpp:183
&gt; #7  0x00007fffe958d602 in ?? () from /nix/store/r6n4b9crppc0rmrr2z46xkqa87agydqy-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #8  0x00007fffe959612b in ?? () from /nix/store/r6n4b9crppc0rmrr2z46xkqa87agydqy-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #9  0x00007ffff51f95a7 in start_thread () from /nix/store/g2yk54hifqlsjiha3szr4q3ccmdzyrdv-glibc-2.27/lib/libpthread.so.0
&gt; #10 0x00007fffe6a6822f in clone () from /nix/store/g2yk54hifqlsjiha3szr4q3ccmdzyrdv-glibc-2.27/lib/libc.so.6
&gt; (gdb)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1821810</commentid>
    <comment_count>95</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2018-11-27 20:56:38 +0000</bug_when>
    <thetext>Git commit 4f0e00648e3cab9d21fe0b34e7924a5912de5a25 by Maik Qualmann.
Committed on 27/11/2018 at 20:55.
Pushed by mqualmann into branch &apos;master&apos;.

try with a QMutexLocker for the libjpeg

M  +2    -0    core/libs/dimg/loaders/dimgloader.cpp
M  +4    -1    core/libs/dimg/loaders/dimgloader.h
M  +2    -0    core/libs/dimg/loaders/jpegloader.cpp

https://commits.kde.org/digikam/4f0e00648e3cab9d21fe0b34e7924a5912de5a25</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1822187</commentid>
    <comment_count>96</comment_count>
    <who name="">timokau</who>
    <bug_when>2018-11-28 16:35:23 +0000</bug_when>
    <thetext>No luck:

&gt; digikam.general: Found 0 faces in &quot;IMG-20130708-WA0000.jpg&quot; QSize(2560, 1920) QSize(2560, 1920)
&gt; digikam.general: Removing old entries ()
&gt; digikam.facesengine: detectMultiScale: image size  800   600  searchIncrement  1.1  grouping  3  flags  1  min size  26   26 
&gt; 
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.dimg: &quot;/home/timo/Pictures/pictures/Pictures/Android/Whatsapp/IMG-20130817-WA0000.jpg&quot;  : JPEG file identified
&gt; 
&gt; Thread 25 &quot;Thread (pooled)&quot; received signal SIGSEGV, Segmentation fault.
&gt; [Switching to Thread 0x7fff599e6700 (LWP 6031)]
&gt; 0x00007ffff62485da in std::__atomic_base&lt;int&gt;::load (__m=std::memory_order_relaxed, 
&gt;     this=&lt;optimized out&gt;)
&gt;     at /nix/store/6qmfmricr58bjivgr16y9sjisakdykag-gcc-7.3.0/include/c++/7.3.0/bits/at
&gt; omic_base.h:396
&gt; 396             return __atomic_load_n(&amp;_M_i, __m);
&gt; (gdb) bt
&gt; #0  0x00007ffff62485da in std::__atomic_base&lt;int&gt;::load (__m=std::memory_order_relaxed
&gt; , this=&lt;optimized out&gt;)
&gt;     at /nix/store/6qmfmricr58bjivgr16y9sjisakdykag-gcc-7.3.0/include/c++/7.3.0/bits/at
&gt; omic_base.h:396
&gt; #1  QAtomicOps&lt;int&gt;::load&lt;int&gt; (_q_value=...) at /nix/store/yd5wgc2yaz8biynyjxsh743xyh
&gt; 7bnr77-qtbase-5.11.1-dev/include/QtCore/qatomic_cxx11.h:227
&gt; #2  QBasicAtomicInteger&lt;int&gt;::load (this=&lt;optimized out&gt;) at /nix/store/yd5wgc2yaz8biy
&gt; nyjxsh743xyh7bnr77-qtbase-5.11.1-dev/include/QtCore/qbasicatomic.h:103
&gt; #3  QtPrivate::RefCount::isShared (this=&lt;optimized out&gt;) at /nix/store/yd5wgc2yaz8biynyjxsh743xyh7bnr77-qtbase-5.11.1-dev/include/QtCore/qrefcount.h:101
&gt; #4  QMap&lt;QString, QVariant&gt;::detach (this=0x3b0e4c8) at /nix/store/yd5wgc2yaz8biynyjxsh743xyh7bnr77-qtbase-5.11.1-dev/include/QtCore/qmap.h:364
&gt; #5  QMap&lt;QString, QVariant&gt;::insert (this=0x3b0e4c8, akey=..., avalue=...) at /nix/store/yd5wgc2yaz8biynyjxsh743xyh7bnr77-qtbase-5.11.1-dev/include/QtCore/qmap.h:704
&gt; #6  0x00007ffff6480282 in Digikam::LoadSaveThread::exifRotate (image=..., filePath=...) at /home/timo/tmp/source/core/libs/threadimageio/fileio/loadsavethread.cpp:336
&gt; #7  0x00007ffff6468bfd in Digikam::PreviewLoadingTask::execute (this=0x3f790c0) at /home/timo/tmp/source/core/libs/threadimageio/preview/previewtask.cpp:402
&gt; #8  0x00007ffff647ffce in Digikam::LoadSaveThread::run (this=0x36c4990) at /home/timo/tmp/source/core/libs/threadimageio/fileio/loadsavethread.cpp:133
&gt; #9  0x00007ffff64a1afe in Digikam::DynamicThread::Private::run (this=0x3e43d50) at /home/timo/tmp/source/core/libs/threads/dynamicthread.cpp:183
&gt; #10 0x00007fffe958e602 in ?? () from /nix/store/r6n4b9crppc0rmrr2z46xkqa87agydqy-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #11 0x00007fffe959712b in ?? () from /nix/store/r6n4b9crppc0rmrr2z46xkqa87agydqy-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #12 0x00007ffff51fa5a7 in start_thread () from /nix/store/g2yk54hifqlsjiha3szr4q3ccmdzyrdv-glibc-2.27/lib/libpthread.so.0
&gt; #13 0x00007fffe6a6922f in clone () from /nix/store/g2yk54hifqlsjiha3szr4q3ccmdzyrdv-glibc-2.27/lib/libc.so.6
&gt; (gdb)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1822214</commentid>
    <comment_count>97</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2018-11-28 18:28:00 +0000</bug_when>
    <thetext>OK, not within the JpegLoader, it may be coincidence, we&apos;ll see. QMap is definitely not thread save, so we&apos;ll put it to the test with a global QMutexLocker.

Maik</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1822216</commentid>
    <comment_count>98</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2018-11-28 18:50:23 +0000</bug_when>
    <thetext>Git commit 632d1a58d442b17a7f752f12a1e5d3be6e906d35 by Maik Qualmann.
Committed on 28/11/2018 at 18:49.
Pushed by mqualmann into branch &apos;master&apos;.

try with a QMutexLocker for the QMap

M  +38   -0    core/libs/dimg/dimg.cpp
M  +3    -0    core/libs/dimg/dimg.h

https://commits.kde.org/digikam/632d1a58d442b17a7f752f12a1e5d3be6e906d35</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1822254</commentid>
    <comment_count>99</comment_count>
    <who name="">timokau</who>
    <bug_when>2018-11-28 21:43:37 +0000</bug_when>
    <thetext>SIGABRT again:

&gt; digikam.metaengine: Exif color-space tag is sRGB. Using default sRGB ICC profile.
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.dimg: &quot;/home/timo/Pictures/pictures/Pictures/Android/Camera/IMG_20140910_121859.jpg&quot;  : JPEG file identified
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; double free or corruption (!prev)
&gt; 
&gt; Thread 1833 &quot;Thread (pooled)&quot; received signal SIGABRT, Aborted.
&gt; [Switching to Thread 0x7fff37fff700 (LWP 13905)]
&gt; 0x00007fffe69abbe0 in raise () from /nix/store/g2yk54hifqlsjiha3szr4q3ccmdzyrdv-glibc-2.27/lib/libc.so.6
&gt; (gdb) bt
&gt; #0  0x00007fffe69abbe0 in raise () from /nix/store/g2yk54hifqlsjiha3szr4q3ccmdzyrdv-glibc-2.27/lib/libc.so.6
&gt; #1  0x00007fffe69acdc1 in abort () from /nix/store/g2yk54hifqlsjiha3szr4q3ccmdzyrdv-glibc-2.27/lib/libc.so.6
&gt; #2  0x00007fffe69ed2ac in __libc_message () from /nix/store/g2yk54hifqlsjiha3szr4q3ccm
&gt; dzyrdv-glibc-2.27/lib/libc.so.6
&gt; #3  0x00007fffe69f349a in malloc_printerr () from /nix/store/g2yk54hifqlsjiha3szr4q3cc
&gt; mdzyrdv-glibc-2.27/lib/libc.so.6
&gt; #4  0x00007fffe69f43ec in _int_free () from /nix/store/g2yk54hifqlsjiha3szr4q3ccmdzyrd
&gt; v-glibc-2.27/lib/libc.so.6
&gt; #5  0x00007ffff63b054d in Digikam::DImg::rotate (this=0x2a39558, angle=angle@entry=Dig
&gt; ikam::DImg::ROT90) at /home/timo/tmp/source/core/libs/dimg/dimg.cpp:2361
&gt; #6  0x00007ffff63b0797 in Digikam::DImg::rotateAndFlip (this=this@entry=0x2a39558, ori
&gt; entation=&lt;optimized out&gt;) at /home/timo/tmp/source/core/libs/dimg/dimg.cpp:2687
&gt; #7  0x00007ffff648061a in Digikam::LoadSaveThread::exifRotate (image=..., filePath=...
&gt; ) at /home/timo/tmp/source/core/libs/threadimageio/fileio/loadsavethread.cpp:335
&gt; #8  0x00007ffff6468fcd in Digikam::PreviewLoadingTask::execute (this=0x2a39360) at /ho
&gt; me/timo/tmp/source/core/libs/threadimageio/preview/previewtask.cpp:402
&gt; #9  0x00007ffff648039e in Digikam::LoadSaveThread::run (this=0x3808470) at /home/timo/tmp/source/core/libs/threadimageio/fileio/loadsavethread.cpp:133
&gt; #10 0x00007ffff64a1ece in Digikam::DynamicThread::Private::run (this=0x3816060) at /home/timo/tmp/source/core/libs/threads/dynamicthread.cpp:183
&gt; #11 0x00007fffe958e602 in ?? () from /nix/store/r6n4b9crppc0rmrr2z46xkqa87agydqy-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #12 0x00007fffe959712b in ?? () from /nix/store/r6n4b9crppc0rmrr2z46xkqa87agydqy-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #13 0x00007ffff51fa5a7 in start_thread () from /nix/store/g2yk54hifqlsjiha3szr4q3ccmdzyrdv-glibc-2.27/lib/libpthread.so.0
&gt; #14 0x00007fffe6a6922f in clone () from /nix/store/g2yk54hifqlsjiha3szr4q3ccmdzyrdv-glibc-2.27/lib/libc.so.6
&gt; (gdb)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1828088</commentid>
    <comment_count>100</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2018-12-22 21:36:41 +0000</bug_when>
    <thetext>*** Bug 402470 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1828393</commentid>
    <comment_count>101</comment_count>
    <who name="Brandon Kirsch">brandonkirsch</who>
    <bug_when>2018-12-24 21:38:57 +0000</bug_when>
    <thetext>I just opened the now-confirmed duplicate bug regarding crashes during face detection.

Please see my following responses &amp; updates to my bug:

CPU0: Intel(R) Core(TM) i7-7600U CPU @ 2.80GHz (family: 0x6, model: 0x8e, stepping: 0x9)

On a Lenovo T470 Laptop.  Hyperthreading is enabled.

I have re-run Face Detection about 2 dozen times in the name of experiments.

It slowly grows in heap size until crashing around 2 GB.  This is on a machine that has 32GB physical RAM and not much else going on when the crash occurs.

Crash seems to occur quickly when I turn accuracy up (98-100%)

After about two dozen runs, I submitted a job at 80% accuracy (literally no changes from the default values) and it completed all the way with no crash.  Excited to find Digikam running after a full scan, I repeated the same exact scan @ 80% accuracy and it crashed minutes later.

I did not make any other changes to my Digikam album between these runs.  I did not suggest names, review Unconfirmed or Unknown faces, load other photos or otherwise reconfigure Digikam.

I have not yet tried any of the commits mentioned in this thread.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1828850</commentid>
    <comment_count>102</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2018-12-27 18:51:52 +0000</bug_when>
    <thetext>@Timakau, can you please with the current git/master version try if the problem is still to reproduce?

Maik</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1829059</commentid>
    <comment_count>103</comment_count>
    <who name="">timokau</who>
    <bug_when>2018-12-28 13:15:21 +0000</bug_when>
    <thetext>Still crashes. With yesterday&apos;s master (66580b3892f67c1233c14946637b00f3aa053b69):

&gt; digikam.dimg: &quot;/home/timo/Pictures/pictures/Telegram/Telegram Images/246921120_45306.jpg&quot;  : JPEG file identified
&gt; digikam.dimg: &quot;/home/timo/Pictures/pictures/Telegram/Telegram Images/246921164_244594.jpg&quot;  : JPEG file identified
&gt; digikam.dimg: &quot;/home/timo/Pictures/pictures/Telegram/Telegram Images/246921168_292326.jpg&quot;  : JPEG file identified
&gt; digikam.dimg: &quot;/home/timo/Pictures/pictures/Telegram/Telegram Images/246921436_238780.jpg&quot;  : JPEG file identified
&gt; digikam.general: Removing old entries ()
&gt; digikam.facesengine: detectMultiScale gave (QRect(200,114 50x50), QRect(336,105 104x104))
&gt; digikam.facesengine: Verifying face QRect(200,114 50x50) using cascade 0
&gt; digikam.facesengine: detectMultiScale: image size ( 130 , 130 ) searchIncrement 1.1 grouping 3 flags 0 min size ( 30 , 30 )
&gt; digikam.facesengine: detectMultiScale gave ()
&gt; digikam.facesengine: Verifying face QRect(200,114 50x50) using cascade 1
&gt; digikam.facesengine: detectMultiScale: image size ( 130 , 130 ) searchIncrement 1.1 grouping 3 flags 0 min size ( 30 , 30 )
&gt; 
&gt; Thread 3994 &quot;Thread (pooled)&quot; received signal SIGBUS, Bus error.
&gt; [Switching to Thread 0x7ffeea7fc700 (LWP 10727)]
&gt; QMapData&lt;QString, QVariant&gt;::createNode (left=false, parent=0x0, v=..., k=..., this=0x7fff04611890)
&gt;     at /nix/store/701978sbb55nhqhq1kbrrcyax3pz5brm-qtbase-5.11.1-dev/include/QtCore/qmap.h:228
&gt; 228                 new (&amp;n-&gt;key) Key(k);
&gt; (gdb) 
&gt; (gdb) bt
&gt; #0  QMapData&lt;QString, QVariant&gt;::createNode (left=false, parent=0x0, v=..., k=..., this=0x7fff04611890)
&gt;     at /nix/store/701978sbb55nhqhq1kbrrcyax3pz5brm-qtbase-5.11.1-dev/include/QtCore/qmap.h:228
&gt; #1  QMapNode&lt;QString, QVariant&gt;::copy (this=0x79636e65677255, d=d@entry=0x7fff04611890)
&gt;     at /nix/store/701978sbb55nhqhq1kbrrcyax3pz5brm-qtbase-5.11.1-dev/include/QtCore/qmap.h:258
&gt; #2  0x00007ffff6241af2 in QMap&lt;QString, QVariant&gt;::detach_helper (this=0x7fffac092ba8)
&gt;     at /nix/store/701978sbb55nhqhq1kbrrcyax3pz5brm-qtbase-5.11.1-dev/include/QtCore/qmap.h:1006
&gt; #3  QMap&lt;QString, QVariant&gt;::detach (this=0x7fffac092ba8) at /nix/store/701978sbb55nhqhq1kbrrcyax3pz5brm-qtbase-5.11.1-dev/include/QtCore/qmap.h:364
&gt; #4  QMap&lt;QString, QVariant&gt;::insert (this=0x7fffac092ba8, akey=..., avalue=...) at /nix/store/701978sbb55nhqhq1kbrrcyax3pz5brm-qtbase-5.11.1-dev/include/QtCore/qmap.h:704
&gt; #5  0x00007ffff6250621 in Digikam::DImgLoader::uniqueHashV2 (filePath=..., img=img@entry=0x344b888) at /home/timo/tmp/source/core/libs/dimg/loaders/dimgloader.cpp:364
&gt; #6  0x00007ffff6250907 in Digikam::DImgLoader::createHistoryImageId (filePath=..., image=..., metadata=...)
&gt;     at /home/timo/tmp/source/core/libs/dimg/loaders/dimgloader.cpp:276
&gt; #7  0x00007ffff6250df3 in Digikam::DImgLoader::readMetadata (this=0x7ffeea7ec7d0, filePath=...) at /home/timo/tmp/source/core/libs/dimg/loaders/dimgloader.cpp:224
&gt; #8  0x00007ffff62588e1 in Digikam::JPEGLoader::load (this=this@entry=0x7ffeea7ec7d0, filePath=..., observer=observer@entry=0x344b6a0)
&gt;     at /home/timo/tmp/source/core/libs/dimg/loaders/jpegloader.cpp:92
&gt; #9  0x00007ffff63aeb60 in Digikam::DImg::load (this=this@entry=0x344b888, filePath=..., loadFlagsInt=loadFlagsInt@entry=63, observer=observer@entry=0x344b6a0, 
&gt;     rawDecodingSettings=...) at /home/timo/tmp/source/core/libs/dimg/dimg.cpp:429
&gt; #10 0x00007ffff63af160 in Digikam::DImg::load (this=this@entry=0x344b888, filePath=..., observer=observer@entry=0x344b6a0, rawDecodingSettings=...)
&gt;     at /home/timo/tmp/source/core/libs/dimg/dimg.cpp:373
&gt; #11 0x00007ffff6463deb in Digikam::PreviewLoadingTask::execute (this=0x344b690) at /home/timo/tmp/source/core/libs/threadimageio/preview/previewtask.cpp:292
&gt; #12 0x00007ffff647b40e in Digikam::LoadSaveThread::run (this=0x4881aa0) at /home/timo/tmp/source/core/libs/threadimageio/fileio/loadsavethread.cpp:133
&gt; #13 0x00007ffff649cf0e in Digikam::DynamicThread::Private::run (this=0x493b700) at /home/timo/tmp/source/core/libs/threads/dynamicthread.cpp:183
&gt; #14 0x00007fffe955b602 in ?? () from /nix/store/m76jw52z58353hksxm6ws9qw21l7lmmq-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #15 0x00007fffe956412b in ?? () from /nix/store/m76jw52z58353hksxm6ws9qw21l7lmmq-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #16 0x00007ffff51ee5a7 in start_thread () from /nix/store/xdsjx0gba4id3yyqxv66bxnm2sqixkjj-glibc-2.27/lib/libpthread.so.0
&gt; #17 0x00007fffe5b8222f in clone () from /nix/store/xdsjx0gba4id3yyqxv66bxnm2sqixkjj-glibc-2.27/lib/libc.so.6</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1829148</commentid>
    <comment_count>104</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2018-12-28 18:36:16 +0000</bug_when>
    <thetext>@Timakau, if I see it correctly in this thread, we have not yet tested the AppImage. Please test if you can reproduce it as well, just download the AppImage and set the executable flag and start it.

https://files.kde.org/digikam/

Maik</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1829179</commentid>
    <comment_count>105</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2018-12-28 21:26:07 +0000</bug_when>
    <thetext>Git commit 968f695fe523aeec741c80c64f0c992eb51933e2 by Maik Qualmann.
Committed on 28/12/2018 at 21:24.
Pushed by mqualmann into branch &apos;master&apos;.

try with non static methods in threads

M  +5    -5    core/libs/dimg/dimg.cpp
M  +124  -0    core/libs/dimg/loaders/dimgloader.cpp
M  +9    -3    core/libs/dimg/loaders/dimgloader.h
M  +24   -0    core/libs/threadimageio/fileio/loadsavethread.cpp
M  +5    -2    core/libs/threadimageio/fileio/loadsavethread.h
M  +2    -2    core/libs/threadimageio/preview/previewtask.cpp
M  +1    -1    core/utilities/queuemanager/tools/decorate/watermark.cpp

https://commits.kde.org/digikam/968f695fe523aeec741c80c64f0c992eb51933e2</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1829207</commentid>
    <comment_count>106</comment_count>
    <who name="">timokau</who>
    <bug_when>2018-12-29 00:29:35 +0000</bug_when>
    <thetext>Same issue with appimage:

&gt; Digikam::OpenCVFaceDetector::verifyFace: Verifying face QRect(76,118 167x167) using cascade 8
&gt; Digikam::OpenCVFaceDetector::verifyFace: feature QRectF(0.1,0.4 0.8x0.6) QRect(76,118 167x167) QRect(93,185 134x100)
&gt; Digikam::OpenCVFaceDetector::cascadeResult: detectMultiScale: image size ( 134 , 100 ) searchIncrement 1.1 grouping 2 flags 0 min size ( 17 , 17 )
&gt; Digikam::DImg::load: &quot;/home/timo/Pictures/pictures/Telegram/Telegram Images/245013596_303678.jpg&quot;  : JPEG file identified
&gt; Digikam::OpenCVFaceDetector::cascadeResult: detectMultiScale gave (QRect(33,47 64x38))
&gt; Digikam::DetectionWorker::process: Found 1 faces in &quot;239311953_98930.jpg&quot; QSize(1280, 739) QSize(1280, 739)
&gt; Digikam::DatabaseWriter::process: Removing old entries ()
&gt; Digikam::OpenCVFaceDetector::cascadeResult: detectMultiScale: image size ( 613 , 800 ) searchIncrement 1.1 grouping 3 flags 1 min size ( 26 , 26 )
&gt; Digikam::DImg::load: &quot;/home/timo/Pictures/pictures/Telegram/Telegram Images/245013652_48507.jpg&quot;  : JPEG file identified
&gt; 
&gt; Thread 1715 &quot;Thread (pooled)&quot; received signal SIGSEGV, Segmentation fault.
&gt; [Switching to Thread 0x7fff229bd700 (LWP 31333)]
&gt; 0x00007ffff63a6e47 in Digikam::LoadingTask::progressInfo (this=0x2c83710, img=0x2c83908, progress=0.345333338)
&gt;     at /b/dktemp/digikam-master/core/libs/threadimageio/fileio/loadsavetask.cpp:65
&gt; 65      /b/dktemp/digikam-master/core/libs/threadimageio/fileio/loadsavetask.cpp: No such file or directory.
&gt; (gdb) bt
&gt; #0  0x00007ffff63a6e47 in Digikam::LoadingTask::progressInfo (this=0x2c83710, img=0x2c83908, progress=0.345333338)
&gt;     at /b/dktemp/digikam-master/core/libs/threadimageio/fileio/loadsavetask.cpp:65
&gt; #1  0x00007ffff61615c5 in Digikam::JPEGLoader::load (this=this@entry=0x7fff229bc9d0, filePath=..., observer=observer@entry=0x2c83720)
&gt;     at /b/dktemp/digikam-master/core/libs/dimg/loaders/jpegloader.cpp:470
&gt; #2  0x00007ffff62bd649 in Digikam::DImg::load (this=this@entry=0x2c83908, filePath=..., loadFlagsInt=loadFlagsInt@entry=63, observer=observer@entry=0x2c83720, 
&gt;     rawDecodingSettings=...) at /b/dktemp/digikam-master/core/libs/dimg/dimg.cpp:429
&gt; #3  0x00007ffff62bdbc0 in Digikam::DImg::load (this=this@entry=0x2c83908, filePath=..., observer=observer@entry=0x2c83720, rawDecodingSettings=...)
&gt;     at /b/dktemp/digikam-master/core/libs/dimg/dimg.cpp:373
&gt; #4  0x00007ffff6383912 in Digikam::PreviewLoadingTask::execute (this=0x2c83710) at /b/dktemp/digikam-master/core/libs/threadimageio/preview/previewtask.cpp:292
&gt; #5  0x00007ffff639abf5 in Digikam::LoadSaveThread::run (this=0x269a9a0) at /b/dktemp/digikam-master/core/libs/threadimageio/fileio/loadsavethread.cpp:133
&gt; #6  0x00007ffff63c0bee in Digikam::DynamicThread::Private::run (this=0x26a6d30) at /b/dktemp/digikam-master/core/libs/threads/dynamicthread.cpp:183
&gt; #7  0x00000030a10aa60f in ?? () from /home/timo/.cache/appimage-run/4cbb3f534a41c1b5fa3cb473a278eef1129363ad8a0ac0376e4da1932b8a045d/squashfs-root/usr/lib/libQt5Core.so.5
&gt; #8  0x00000030a10ae18a in ?? () from /home/timo/.cache/appimage-run/4cbb3f534a41c1b5fa3cb473a278eef1129363ad8a0ac0376e4da1932b8a045d/squashfs-root/usr/lib/libQt5Core.so.5
&gt; #9  0x00007ffff56dc5a7 in start_thread () from /usr/lib/libpthread.so.0
&gt; #10 0x00007fffefdd122f in clone () from /usr/lib/libc.so.6

Haven&apos;t tested the latest patch yet.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1829235</commentid>
    <comment_count>107</comment_count>
    <who name="">timokau</who>
    <bug_when>2018-12-29 10:15:17 +0000</bug_when>
    <thetext>With the latest patch:

&gt; digikam.facesengine: detectMultiScale: image size ( 400 , 225 ) searchIncrement 1.1 grouping 3 flags 1 min size ( 0 , 0 )
&gt; digikam.general: Removing old entries ()
&gt; digikam.dimg: &quot;/home/timo/Pictures/pictures/Pictures/Kamera-Uploads/2013-12-11 14.38.38.jpg&quot;  : JPEG file identified
&gt; 
&gt; Thread 460 &quot;Thread (pooled)&quot; received signal SIGSEGV, Segmentation fault.
&gt; [Switching to Thread 0x7fff1d7fa700 (LWP 10775)]
&gt; 0x00007fffe95d9120 in ?? () from /nix/store/m76jw52z58353hksxm6ws9qw21l7lmmq-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; (gdb) bt
&gt; #0  0x00007fffe95d9120 in ?? () from /nix/store/m76jw52z58353hksxm6ws9qw21l7lmmq-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #1  0x00007fffe95df25a in operator&lt;(QString const&amp;, QString const&amp;) () from /nix/store/m76jw52z58353hksxm6ws9qw21l7lmmq-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #2  0x00007ffff6240ca1 in qMapLessThanKey&lt;QString&gt; (key2=..., key1=...) at /nix/store/701978sbb55nhqhq1kbrrcyax3pz5brm-qtbase-5.11.1-dev/include/QtCore/qmap.h:71
&gt; #3  QMap&lt;QString, QVariant&gt;::insert (this=0x11faf38, akey=..., avalue=...) at /nix/store/701978sbb55nhqhq1kbrrcyax3pz5brm-qtbase-5.11.1-dev/include/QtCore/qmap.h:711
&gt; #4  0x00007ffff6250001 in Digikam::DImgLoader::uniqueHashV2 (this=this@entry=0x7fff1d7ea7d0, filePath=..., img=img@entry=0x3bd3cb8)
&gt;     at /home/timo/tmp/source/core/libs/dimg/loaders/dimgloader.cpp:437
&gt; #5  0x00007ffff625027f in Digikam::DImgLoader::createHistoryImageId (this=this@entry=0x7fff1d7ea7d0, filePath=..., image=..., metadata=...)
&gt;     at /home/timo/tmp/source/core/libs/dimg/loaders/dimgloader.cpp:302
&gt; #6  0x00007ffff6250706 in Digikam::DImgLoader::readMetadata (this=0x7fff1d7ea7d0, filePath=...) at /home/timo/tmp/source/core/libs/dimg/loaders/dimgloader.cpp:224
&gt; #7  0x00007ffff62586a1 in Digikam::JPEGLoader::load (this=this@entry=0x7fff1d7ea7d0, filePath=..., observer=observer@entry=0x3bd3ad0)
&gt;     at /home/timo/tmp/source/core/libs/dimg/loaders/jpegloader.cpp:92
&gt; #8  0x00007ffff63ae920 in Digikam::DImg::load (this=this@entry=0x3bd3cb8, filePath=..., loadFlagsInt=loadFlagsInt@entry=63, observer=observer@entry=0x3bd3ad0, 
&gt;     rawDecodingSettings=...) at /home/timo/tmp/source/core/libs/dimg/dimg.cpp:429
&gt; #9  0x00007ffff63aef20 in Digikam::DImg::load (this=this@entry=0x3bd3cb8, filePath=..., observer=observer@entry=0x3bd3ad0, rawDecodingSettings=...)
&gt;     at /home/timo/tmp/source/core/libs/dimg/dimg.cpp:373
&gt; #10 0x00007ffff6463baf in Digikam::PreviewLoadingTask::execute (this=0x3bd3ac0) at /home/timo/tmp/source/core/libs/threadimageio/preview/previewtask.cpp:292
&gt; #11 0x00007ffff647b2be in Digikam::LoadSaveThread::run (this=0x2ea1350) at /home/timo/tmp/source/core/libs/threadimageio/fileio/loadsavethread.cpp:133
&gt; #12 0x00007ffff649cece in Digikam::DynamicThread::Private::run (this=0x3189540) at /home/timo/tmp/source/core/libs/threads/dynamicthread.cpp:183
&gt; #13 0x00007fffe955a602 in ?? () from /nix/store/m76jw52z58353hksxm6ws9qw21l7lmmq-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #14 0x00007fffe956312b in ?? () from /nix/store/m76jw52z58353hksxm6ws9qw21l7lmmq-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #15 0x00007ffff51ed5a7 in start_thread () from /nix/store/xdsjx0gba4id3yyqxv66bxnm2sqixkjj-glibc-2.27/lib/libpthread.so.0
&gt; #16 0x00007fffe5b8122f in clone () from /nix/store/xdsjx0gba4id3yyqxv66bxnm2sqixkjj-glibc-2.27/lib/libc.so.6


I also got another crash when I was a bit impatient and tried to start face detection while digkam was still looking for new images. Probably unrelated but maybe not:

&gt; digikam.dimg: &quot;/home/timo/Pictures/pictures/images/old-pics/Camera/IMG_20170809_180048.jpg&quot;  : JPEG file identified
&gt; digikam.dimg: &quot;/home/timo/Pictures/pictures/images/old-pics/Camera/IMG_20170809_180041.jpg&quot;  : JPEG file identified
&gt; digikam.dimg: &quot;/home/timo/Pictures/pictures/images/old-pics/Camera/IMG_20170809_180031.jpg&quot;  : JPEG file identified
&gt; digikam.dimg: &quot;/home/timo/Pictures/pictures/images/old-pics/Camera/IMG_20170809_180024.jpg&quot;  : JPEG file identified
&gt; digikam.dimg: &quot;/home/timo/Pictures/pictures/images/old-pics/Camera/IMG_20170809_180018.jpg&quot;  : JPEG file identified
&gt; digikam.dimg: &quot;/home/timo/Pictures/pictures/images/old-pics/Camera/IMG_20170809_180013.jpg&quot;  : JPEG file identified
&gt; 
&gt; Thread 1 &quot;digikam&quot; received signal SIGSEGV, Segmentation fault.
&gt; 0x0000000002ae4c20 in ?? ()
&gt; (gdb) bt
&gt; #0  0x0000000002ae4c20 in ?? ()
&gt; #1  0x00007fffe9743c49 in QMetaObject::cast(QObject const*) const () from /nix/store/m76jw52z58353hksxm6ws9qw21l7lmmq-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #2  0x00007fffea4fe9d8 in QWidget::isActiveWindow() const () from /nix/store/m76jw52z58353hksxm6ws9qw21l7lmmq-qtbase-5.11.1/lib/libQt5Widgets.so.5
&gt; #3  0x00007fffea547e55 in QStyleOption::init(QWidget const*) () from /nix/store/m76jw52z58353hksxm6ws9qw21l7lmmq-qtbase-5.11.1/lib/libQt5Widgets.so.5
&gt; #4  0x00007fffea721ec2 in QAbstractItemView::viewOptions() const () from /nix/store/m76jw52z58353hksxm6ws9qw21l7lmmq-qtbase-5.11.1/lib/libQt5Widgets.so.5
&gt; #5  0x00007fffea7236a5 in ?? () from /nix/store/m76jw52z58353hksxm6ws9qw21l7lmmq-qtbase-5.11.1/lib/libQt5Widgets.so.5
&gt; #6  0x00007fffea78e6cd in QTreeView::indexRowSizeHint(QModelIndex const&amp;) const () from /nix/store/m76jw52z58353hksxm6ws9qw21l7lmmq-qtbase-5.11.1/lib/libQt5Widgets.so.5
&gt; #7  0x00007fffea78ef5e in QTreeViewPrivate::layout(int, bool, bool) () from /nix/store/m76jw52z58353hksxm6ws9qw21l7lmmq-qtbase-5.11.1/lib/libQt5Widgets.so.5
&gt; #8  0x00007fffea796e1e in QTreeView::doItemsLayout() () from /nix/store/m76jw52z58353hksxm6ws9qw21l7lmmq-qtbase-5.11.1/lib/libQt5Widgets.so.5
&gt; #9  0x00007fffea72472d in QAbstractItemView::timerEvent(QTimerEvent*) () from /nix/store/m76jw52z58353hksxm6ws9qw21l7lmmq-qtbase-5.11.1/lib/libQt5Widgets.so.5
&gt; #10 0x00007fffea79736a in QTreeView::timerEvent(QTimerEvent*) () from /nix/store/m76jw52z58353hksxm6ws9qw21l7lmmq-qtbase-5.11.1/lib/libQt5Widgets.so.5
&gt; #11 0x00007fffe976a32b in QObject::event(QEvent*) () from /nix/store/m76jw52z58353hksxm6ws9qw21l7lmmq-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #12 0x00007fffea516223 in QWidget::event(QEvent*) () from /nix/store/m76jw52z58353hksxm6ws9qw21l7lmmq-qtbase-5.11.1/lib/libQt5Widgets.so.5
&gt; #13 0x00007fffea5b759e in QFrame::event(QEvent*) () from /nix/store/m76jw52z58353hksxm6ws9qw21l7lmmq-qtbase-5.11.1/lib/libQt5Widgets.so.5
&gt; #14 0x00007fffea5ba2d3 in QAbstractScrollArea::event(QEvent*) () from /nix/store/m76jw52z58353hksxm6ws9qw21l7lmmq-qtbase-5.11.1/lib/libQt5Widgets.so.5
&gt; #15 0x00007fffea72ddbb in QAbstractItemView::event(QEvent*) () from /nix/store/m76jw52z58353hksxm6ws9qw21l7lmmq-qtbase-5.11.1/lib/libQt5Widgets.so.5
&gt; #16 0x00007fffea4d702c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /nix/store/m76jw52z58353hksxm6ws9qw21l7lmmq-qtbase-5.11.1/lib/libQt5Widgets.so.5
&gt; #17 0x00007fffea4de5df in QApplication::notify(QObject*, QEvent*) () from /nix/store/m76jw52z58353hksxm6ws9qw21l7lmmq-qtbase-5.11.1/lib/libQt5Widgets.so.5
&gt; #18 0x00007fffe973a608 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /nix/store/m76jw52z58353hksxm6ws9qw21l7lmmq-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #19 0x00007fffe9793bce in QTimerInfoList::activateTimers() () from /nix/store/m76jw52z58353hksxm6ws9qw21l7lmmq-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #20 0x00007fffe9794391 in ?? () from /nix/store/m76jw52z58353hksxm6ws9qw21l7lmmq-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #21 0x00007fffe55a098f in g_main_context_dispatch () from /nix/store/k2cl7p0cnzvgz36fb7ibj4fpamdg3sax-glib-2.58.1/lib/libglib-2.0.so.0
&gt; #22 0x00007fffe55a0c40 in g_main_context_iterate.isra () from /nix/store/k2cl7p0cnzvgz36fb7ibj4fpamdg3sax-glib-2.58.1/lib/libglib-2.0.so.0
&gt; #23 0x00007fffe55a0e1c in g_main_context_iteration () from /nix/store/k2cl7p0cnzvgz36fb7ibj4fpamdg3sax-glib-2.58.1/lib/libglib-2.0.so.0
&gt; #24 0x00007fffe979473f in QEventDispatcherGlib::processEvents(QFlags&lt;QEventLoop::ProcessEventsFlag&gt;) ()
&gt;    from /nix/store/m76jw52z58353hksxm6ws9qw21l7lmmq-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #25 0x00007fffc1479461 in ?? ()
&gt;    from /nix/store/316i5ypkifykyggnkqqp538qa1wz50ng-qtbase-5.11.1-bin/lib/qt-5.11/plugins/platforms/../../../../../95njj2bn313887dx4mbpfapqmznfqs7m-qtbase-5.11.1/lib/libQt5XcbQpa.so.5
&gt; #26 0x00007fffe973893a in QEventLoop::exec(QFlags&lt;QEventLoop::ProcessEventsFlag&gt;) () from /nix/store/m76jw52z58353hksxm6ws9qw21l7lmmq-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #27 0x00007fffe9741e00 in QCoreApplication::exec() () from /nix/store/m76jw52z58353hksxm6ws9qw21l7lmmq-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #28 0x0000000000407638 in main (argc=&lt;optimized out&gt;, argv=&lt;optimized out&gt;) at /home/timo/tmp/source/core/app/main/main.cpp:290</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1829237</commentid>
    <comment_count>108</comment_count>
    <who name="">caulier.gilles</who>
    <bug_when>2018-12-29 10:32:49 +0000</bug_when>
    <thetext>For me, the last backtrace is a non sense.

I suspect that the backtrace is corrupted, as GDB is not able to handle the reality in memory to hack.

Following all the stages in this file where Maik try to fix the crash, i propose a different approach. My ideas:

- the crash is related to thumbnail creation, and something in thumbnail storage is broken with face workflow (why, i don&apos;t know).
Perhaps the problem is with libpgf codec...

So, to be sure, there is a simple way to switch thumb compression to JPEG for ex, and to see if something look better. This is just for testing of course.

- the crash is related to OpenCV and OpenCL low level uses. Look this comment for ex (also relevant of Face management):

https://bugs.kde.org/show_bug.cgi?id=401253#c4

In this case, at least the OpenCV must be compiled without OpenCL support. This can be certainly done with AppImage, but for distro packages, we need another way in digiKam implementation to make the code more robust when OpenCL is used by OpenCV.

Note: this is why i hate all low level performance improvements as OpenCL framework, which depend in deed of video card device and proprietary modules. You have no control in application level, and no way to stabilize the user code. We want a working code first, the improvements if possible without to degrade all workflow can come later...

And my 10cts €: proprietary video cards modules under Linux are now enough stable as under Windows. So for me this OpenCL framework is not portable and safe. And i do not talk about MacOS...

Gilles</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1829238</commentid>
    <comment_count>109</comment_count>
    <who name="">caulier.gilles</who>
    <bug_when>2018-12-29 10:46:58 +0000</bug_when>
    <thetext>Edit : proprietary video cards modules under Linux are _NOT_ enough
stable as under Windows.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1829239</commentid>
    <comment_count>110</comment_count>
    <who name="">timokau</who>
    <bug_when>2018-12-29 10:56:50 +0000</bug_when>
    <thetext>I&apos;ll test with OpenCL disabled (currently building opencv with `-DWITH_OPENCL=OFF`).

&gt; there is a simple way to switch thumb compression to JPEG for ex

If you can provide a patch or explain how to do that I&apos;ll test that too.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1829248</commentid>
    <comment_count>111</comment_count>
    <who name="">caulier.gilles</who>
    <bug_when>2018-12-29 11:32:17 +0000</bug_when>
    <thetext>Even if digiKam use PGF to store thumbnails in database, we have plenty of codec usable as alternative. The code is here:

https://cgit.kde.org/digikam.git/tree/core/libs/threadimageio/thumb/thumbnailcreator.cpp#n758


The switch to the right codec depends of the format recorded to the thumbnail database schema at DB creation.

If you compile digiKam yourself, the magic line to touch is located here:

https://cgit.kde.org/digikam.git/tree/core/libs/threadimageio/thumb/thumbnailcreator.cpp#n769

The storage of thumbnails is always forced to PGF. Just use another one as PNG for ex. Of course the thumbnail database size will grow more quickly that PGF as there is no wavelets compression in PNG.

The possible formats as listed here :

https://cgit.kde.org/digikam.git/tree/core/libs/database/thumbsdb/thumbsdb.h#n48

Note that JPEG do not support alpha channel, and cannot be used everywhere, but for JPEG or RAW photo it&apos;s fine. I don&apos;t recommend to use JPEG2000...

Before to change this line of code, make a database backup before !

recompile code and before to run, remove the database sqlite file for thumbnail. Only this one must be affected by this change.

Start digiKam, the thumbnail database must be recreated from scratch. Start to navigate in album, thumbnail must be generated and appear in icon-view. The cache mechanism must be active when you switch to another album and go back to previous one, the thumbnails already calculated and stored in database must appear immediately.

Now run the face management again, all look if stability is improved.

When you complete the test, revert the source code line changes and recompile. restore the database backup done previously.

Voilà

Gilles</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1829252</commentid>
    <comment_count>112</comment_count>
    <who name="">timokau</who>
    <bug_when>2018-12-29 12:01:06 +0000</bug_when>
    <thetext>So basically I apply this patch: https://gist.github.com/timokau/4b4ec516d975c0ebdb3f4b65e8b5dc82 correct?

I always test with a copy of my pictures, wipe the databases (`rm ~/pictures/*.db`) and rebuild from scratch so the rest shouldn&apos;t be an issue.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1829270</commentid>
    <comment_count>113</comment_count>
    <who name="">caulier.gilles</who>
    <bug_when>2018-12-29 13:02:46 +0000</bug_when>
    <thetext>yes patch is fine...
Gilles</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1829281</commentid>
    <comment_count>114</comment_count>
    <who name="">timokau</who>
    <bug_when>2018-12-29 15:01:24 +0000</bug_when>
    <thetext>No luck.


With OpenCL disabled:

&gt; digikam.facesengine: Verifying face QRect(308,190 47x47) using cascade 7
&gt; digikam.facesengine: feature QRectF(0.2,0.25 0.6x0.6) QRect(308,190 47x47) QRect(317,202 28x28)
&gt; digikam.facesengine: detectMultiScale: image size ( 28 , 28 ) searchIncrement 1.1 grouping 2 flags 0 min size ( 5 , 5 )
&gt; digikam.facesengine: detectMultiScale gave ()
&gt; digikam.facesengine: Verifying face QRect(308,190 47x47) using cascade 8
&gt; digikam.facesengine: feature QRectF(0.1,0.4 0.8x0.6) QRect(308,190 47x47) QRect(313,209 38x28)
&gt; digikam.facesengine: detectMultiScale: image size ( 38 , 28 ) searchIncrement 1.1 grouping 2 flags 0 min size ( 5 , 5 )
&gt; digikam.facesengine: detectMultiScale gave ()
&gt; digikam.general: Found 0 faces in &quot;2014-02-25 19.05.25.jpg&quot; QSize(3264, 2448) QSize(3264, 2448)
&gt; digikam.general: Removing old entries ()
&gt; [Thread 0x7ffef8ff9700 (LWP 12284) exited]
&gt; 
&gt; Thread 56 &quot;Thread (pooled)&quot; received signal SIGSEGV, Segmentation fault.
&gt; [Switching to Thread 0x7fff34bdd700 (LWP 5075)]
&gt; 0x00007ffff6487767 in Digikam::LoadingTask::progressInfo (this=0x3d488a0, img=0x3d48a98, progress=0.649999976)
&gt;     at /home/timo/tmp/source/core/libs/threadimageio/fileio/loadsavetask.cpp:65
&gt; 65              if (m_thread &amp;&amp; m_thread-&gt;querySendNotifyEvent())
&gt; (gdb) 
&gt; (gdb) bt
&gt; #0  0x00007ffff6487767 in Digikam::LoadingTask::progressInfo (this=0x3d488a0, img=0x3d48a98, progress=0.649999976)
&gt;     at /home/timo/tmp/source/core/libs/threadimageio/fileio/loadsavetask.cpp:65
&gt; #1  0x00007ffff6259ca0 in Digikam::JPEGLoader::load (this=this@entry=0x7fff34bcd7d0, filePath=..., observer=observer@entry=0x3d488b0)
&gt;     at /home/timo/tmp/source/core/libs/dimg/loaders/jpegloader.cpp:470
&gt; #2  0x00007ffff63ae920 in Digikam::DImg::load (this=this@entry=0x3d48a98, filePath=..., loadFlagsInt=loadFlagsInt@entry=63, observer=observer@entry=0x3d488b0, 
&gt;     rawDecodingSettings=...) at /home/timo/tmp/source/core/libs/dimg/dimg.cpp:429
&gt; #3  0x00007ffff63aef20 in Digikam::DImg::load (this=this@entry=0x3d48a98, filePath=..., observer=observer@entry=0x3d488b0, rawDecodingSettings=...)
&gt;     at /home/timo/tmp/source/core/libs/dimg/dimg.cpp:373
&gt; #4  0x00007ffff6463baf in Digikam::PreviewLoadingTask::execute (this=0x3d488a0) at /home/timo/tmp/source/core/libs/threadimageio/preview/previewtask.cpp:292
&gt; #5  0x00007ffff647b2be in Digikam::LoadSaveThread::run (this=0x31cd1e0) at /home/timo/tmp/source/core/libs/threadimageio/fileio/loadsavethread.cpp:133
&gt; #6  0x00007ffff649cece in Digikam::DynamicThread::Private::run (this=0x2e9b100) at /home/timo/tmp/source/core/libs/threads/dynamicthread.cpp:183
&gt; #7  0x00007fffe955a602 in ?? () from /nix/store/m76jw52z58353hksxm6ws9qw21l7lmmq-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #8  0x00007fffe956312b in ?? () from /nix/store/m76jw52z58353hksxm6ws9qw21l7lmmq-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #9  0x00007ffff51ed5a7 in start_thread () from /nix/store/xdsjx0gba4id3yyqxv66bxnm2sqixkjj-glibc-2.27/lib/libpthread.so.0
&gt; #10 0x00007fffe5c9d22f in clone () from /nix/store/xdsjx0gba4id3yyqxv66bxnm2sqixkjj-glibc-2.27/lib/libc.so.6
&gt; (gdb) 


With the patch applied (PNG instead of PGF):


&gt; digikam.dimg: &quot;/home/timo/Pictures/pictures/Pictures/[...]/IMG_7334.JPG&quot;  : JPEG file identified
&gt; digikam.facesengine: detectMultiScale gave ()
&gt; digikam.general: Found 0 faces in &quot;IMG_2038.jpg&quot; QSize(1600, 1200) QSize(1600, 1200)
&gt; digikam.general: Removing old entries ()
&gt; digikam.facesengine: detectMultiScale: image size ( 800 , 600 ) searchIncrement 1.1 grouping 3 flags 1 min size ( 26 , 26 )
&gt; 
&gt; Thread 27 &quot;Thread (pooled)&quot; received signal SIGSEGV, Segmentation fault.
&gt; [Switching to Thread 0x7fff479ff700 (LWP 15737)]
&gt; 0x00007ffff6487767 in Digikam::LoadingTask::progressInfo (this=0x30299d0, 
&gt;     img=0x3029bc8, progress=0.699999988)
&gt;     at /home/timo/tmp/source/core/libs/threadimageio/fileio/loadsavetask.cpp:65
&gt; 65              if (m_thread &amp;&amp; m_thread-&gt;querySendNotifyEvent())
&gt; (gdb) 
&gt; (gdb) 
&gt; (gdb) bt
&gt; #0  0x00007ffff6487767 in Digikam::LoadingTask::progressInfo (this=0x30299d0, 
&gt;     img=0x3029bc8, progress=0.699999988)
&gt;     at /home/timo/tmp/source/core/libs/threadimageio/fileio/loadsavetask.cpp:65
&gt; #1  0x00007ffff6259ca0 in Digikam::JPEGLoader::load (this=this@entry=0x7fff479ef7d0, 
&gt;     filePath=..., observer=observer@entry=0x30299e0)
&gt;     at /home/timo/tmp/source/core/libs/dimg/loaders/jpegloader.cpp:470
&gt; #2  0x00007ffff63ae920 in Digikam::DImg::load (this=this@entry=0x3029bc8, 
&gt;     filePath=..., loadFlagsInt=loadFlagsInt@entry=63, 
&gt;     observer=observer@entry=0x30299e0, rawDecodingSettings=...)
&gt;     at /home/timo/tmp/source/core/libs/dimg/dimg.cpp:429
&gt; #3  0x00007ffff63aef20 in Digikam::DImg::load (this=this@entry=0x3029bc8, 
&gt;     filePath=..., observer=observer@entry=0x30299e0, rawDecodingSettings=...)
&gt;     at /home/timo/tmp/source/core/libs/dimg/dimg.cpp:373
&gt; #4  0x00007ffff6463baf in Digikam::PreviewLoadingTask::execute (this=0x30299d0)
&gt;     at /home/timo/tmp/source/core/libs/threadimageio/preview/previewtask.cpp:292
&gt; #5  0x00007ffff647b2be in Digikam::LoadSaveThread::run (this=0x3630640)
&gt;     at /home/timo/tmp/source/core/libs/threadimageio/fileio/loadsavethread.cpp:133
&gt; #6  0x00007ffff649cece in Digikam::DynamicThread::Private::run (this=0x3437be0)
&gt;     at /home/timo/tmp/source/core/libs/threads/dynamicthread.cpp:183
&gt; #7  0x00007fffe955a602 in ?? ()
&gt;    from /nix/store/m76jw52z58353hksxm6ws9qw21l7lmmq-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #8  0x00007fffe956312b in ?? ()
&gt;    from /nix/store/m76jw52z58353hksxm6ws9qw21l7lmmq-qtbase-5.11.1/lib/libQt5Core.so.5
&gt; #9  0x00007ffff51ed5a7 in start_thread ()
&gt;    from /nix/store/xdsjx0gba4id3yyqxv66bxnm2sqixkjj-glibc-2.27/lib/libpthread.so.0
&gt; #10 0x00007fffe5c9d22f in clone ()
&gt;    from /nix/store/xdsjx0gba4id3yyqxv66bxnm2sqixkjj-glibc-2.27/lib/libc.so.6
&gt; (gdb)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1829282</commentid>
    <comment_count>115</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2018-12-29 15:09:21 +0000</bug_when>
    <thetext>Here at the last backtrace we find ourselves in the wrong overloaded function, which should never be possible. I think it will be something very strange, causing these crashes. So far only on Intel processors. Although Intel is probably more common, I find it strange. I can not confirm a memory leak, nor any crash here with me.

Maik</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1829283</commentid>
    <comment_count>116</comment_count>
    <who name="">caulier.gilles</who>
    <bug_when>2018-12-29 15:27:30 +0000</bug_when>
    <thetext>Well the backtrace revelate 2 points :

1/ None of thumbnail storage format or OpenCL introduce the dysfunction.

2/ As Maik said, a wrong overloaded function is called from the thumbnail engine.

So i suspect a dysfunction with your compiler, probably a compilation option used when you run make.

Please give me the result of &quot;g++ -v&quot; from a console.

Here with the g++ 5.5.0 (the base from Mageia6), i never seen this kind of crash from the thumbnail engine.

Also, I&apos;m curious to see which options are passed by KF5::ECM component to g++ while compilation. To check this point it&apos;s very simple. From a console, go to build directory of thumbnail engine and run :

[gilles@localhost threadimageio]$ export VERBOSE=1
[gilles@localhost threadimageio]$ pwd
/mnt/devel/GIT/6.x/build/core/libs/threadimageio
[gilles@localhost threadimageio]$ make clean
cd /mnt/devel/GIT/6.x/build &amp;&amp; make -f CMakeFiles/Makefile2 core/libs/threadimageio/clean
make[1] : on entre dans le répertoire « /mnt/devel/GIT/6.x/build »
make -f core/libs/threadimageio/CMakeFiles/threadimageio_src.dir/build.make core/libs/threadimageio/CMakeFiles/threadimageio_src.dir/clean
make[2] : on entre dans le répertoire « /mnt/devel/GIT/6.x/build »
cd /mnt/devel/GIT/6.x/build/core/libs/threadimageio &amp;&amp; /usr/bin/cmake -P CMakeFiles/threadimageio_src.dir/cmake_clean.cmake
make[2] : on quitte le répertoire « /mnt/devel/GIT/6.x/build »
make -f core/libs/threadimageio/CMakeFiles/threadimageio_src_automoc.dir/build.make core/libs/threadimageio/CMakeFiles/threadimageio_src_automoc.dir/clean
make[2] : on entre dans le répertoire « /mnt/devel/GIT/6.x/build »
cd /mnt/devel/GIT/6.x/build/core/libs/threadimageio &amp;&amp; /usr/bin/cmake -P CMakeFiles/threadimageio_src_automoc.dir/cmake_clean.cmake
make[2] : on quitte le répertoire « /mnt/devel/GIT/6.x/build »
make[1] : on quitte le répertoire « /mnt/devel/GIT/6.x/build »
[gilles@localhost threadimageio]$ make
cd /mnt/devel/GIT/6.x/build &amp;&amp; /usr/bin/cmake -H/mnt/devel/GIT/6.x -B/mnt/devel/GIT/6.x/build --check-build-system CMakeFiles/Makefile.cmake 0
cd /mnt/devel/GIT/6.x/build &amp;&amp; /usr/bin/cmake -E cmake_progress_start /mnt/devel/GIT/6.x/build/CMakeFiles /mnt/devel/GIT/6.x/build/core/libs/threadimageio/CMakeFiles/progress.marks
cd /mnt/devel/GIT/6.x/build &amp;&amp; make -f CMakeFiles/Makefile2 core/libs/threadimageio/all
make[1] : on entre dans le répertoire « /mnt/devel/GIT/6.x/build »
make -f core/libs/threadimageio/CMakeFiles/threadimageio_src_automoc.dir/build.make core/libs/threadimageio/CMakeFiles/threadimageio_src_automoc.dir/depend
make[2] : on entre dans le répertoire « /mnt/devel/GIT/6.x/build »
cd /mnt/devel/GIT/6.x/build &amp;&amp; /usr/bin/cmake -E cmake_depends &quot;Unix Makefiles&quot; /mnt/devel/GIT/6.x /mnt/devel/GIT/6.x/core/libs/threadimageio /mnt/devel/GIT/6.x/build /mnt/devel/GIT/6.x/build/core/libs/threadimageio /mnt/devel/GIT/6.x/build/core/libs/threadimageio/CMakeFiles/threadimageio_src_automoc.dir/DependInfo.cmake --color=
make[2] : on quitte le répertoire « /mnt/devel/GIT/6.x/build »
make -f core/libs/threadimageio/CMakeFiles/threadimageio_src_automoc.dir/build.make core/libs/threadimageio/CMakeFiles/threadimageio_src_automoc.dir/build
make[2] : on entre dans le répertoire « /mnt/devel/GIT/6.x/build »
[  0%] Automatic moc for target threadimageio_src
...

Capture all the compiler traces generated and post the result here...

Gilles</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1829285</commentid>
    <comment_count>117</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2018-12-29 15:35:04 +0000</bug_when>
    <thetext>Gilles, to 2, the crash is not in the thumbnail engine. It is the PreviewTask to load images for perform the face recognition.

Maik</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1829286</commentid>
    <comment_count>118</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2018-12-29 15:36:06 +0000</bug_when>
    <thetext>Not face recognition...face detection.

Maik</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1829290</commentid>
    <comment_count>119</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2018-12-29 15:41:36 +0000</bug_when>
    <thetext>When I see the last backtrace, the progress is already 0.6999, so almost 70%. It&apos;s definitely the same thread, because the DImg address is the same and the jump LoadingTask::progressInfo() instead of SharedLoadingTask::progressInfo(), impossible...

Maik</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1829291</commentid>
    <comment_count>120</comment_count>
    <who name="">timokau</who>
    <bug_when>2018-12-29 15:45:28 +0000</bug_when>
    <thetext>&gt; So i suspect a dysfunction with your compiler, probably a compilation option used when you run make.

Note that at Maik&apos;s request I also tried the appimage and got the same result (https://bugs.kde.org/show_bug.cgi?id=399923#c106).

&gt; Please give me the result of &quot;g++ -v&quot; from a console.

Using built-in specs.
COLLECT_GCC=/nix/store/p7j7qg5cri229ihf8nllwjhzgbvgx5d0-gcc-7.3.0/bin/g++
COLLECT_LTO_WRAPPER=/nix/store/p7j7qg5cri229ihf8nllwjhzgbvgx5d0-gcc-7.3.0/libexec/gcc/x86_64-unknown-linux-gnu/7.3.0/lto-wrapper
Target: x86_64-unknown-linux-gnu
Configured with: 
Thread model: posix
gcc version 7.3.0 (GCC) 

&gt; Also, I&apos;m curious to see which options are passed by KF5::ECM component to g++ while compilation.

Pastebin: http://sprunge.us/yJdEwP</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1829614</commentid>
    <comment_count>121</comment_count>
    <who name="">caulier.gilles</who>
    <bug_when>2018-12-31 11:50:50 +0000</bug_when>
    <thetext>Can you reproduce the dysfunction using the last digiKam 6.0.0-beta3 just
released ?

https://www.digikam.org/news/2018-12-30-6.0.0-beta3_release_announcement/</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1829635</commentid>
    <comment_count>122</comment_count>
    <who name="">timokau</who>
    <bug_when>2018-12-31 12:21:55 +0000</bug_when>
    <thetext>There were no relevant commits since the last revision I tested (66580b3892f67c1233c14946637b00f3aa053b69). I assume you just automatically post this in every ticket when a new beta is released?

The only two commits touch the changelog and a couple of comments.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1829641</commentid>
    <comment_count>123</comment_count>
    <who name="">caulier.gilles</who>
    <bug_when>2018-12-31 12:35:03 +0000</bug_when>
    <thetext>yes, this is an automatic message from a multiple selection of bugzilla files.

Gilles</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1831304</commentid>
    <comment_count>124</comment_count>
    <who name="Mathias Johansson">lunitic</who>
    <bug_when>2019-01-09 22:37:31 +0000</bug_when>
    <thetext>Hi,

I think i may encounter the same issue. I wrote about my issues in #401253

This is what happens when i run Beta 3 and run scan faces on my collection.
nCVFaceDetector::cascadeResult: detectMultiScale: image size ( 800 , 450 ) searchIncrement 1.1 grouping 3 flags 1 min size ( 26 , 26 )
Digikam::IccManager::IccManager: Cannot open workspace color profile &quot;&quot;
Digikam::DImg::load: &quot;/home/mathias/photos/Osorterat/Mathias/osorterade bilder/Messenger/received_10208789201436022.jpeg&quot;  : JPEG file identified
Digikam::FacePipeline::Private::checkFinished: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
Digikam::FacePipeline::Private::checkFinished: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
Digikam::FacePipeline::Private::checkFinished: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
Digikam::DImg::load: &quot;/home/mathias/photos/Osorterat/Mathias/osorterade bilder/Messenger/received_10208790012496298.jpeg&quot;  : JPEG file identified
/tmp/.mount_digika4WzBy9/AppRun: line 115:  1381 Segmentation fault      (core dumped) digikam $@


Cam I help you in anyway? 

I have just started to test out Digikam to see if I like the workflow.

However my Face detect still crashes in BETA 3 as it did in BETA 2.

I have tested it with both a local database, Centralized MySQL environment.
Tested it on 2 different Windows 10 and also installed a xUbuntu 18.04 and all of them crashes in BETA 3.

I then tested in 5.9 and it seems stable (not had that much time to test).

If you guys need help with debugging just give me a shout. I have both windows / Linux machine running.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1841823</commentid>
    <comment_count>125</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2019-03-04 21:43:56 +0000</bug_when>
    <thetext>We&apos;re back to this problem here, and we&apos;re pretty sure that the memory corruption is triggered by active OpenCL hardware acceleration. We were able to prevent a crash in the Windows bundle in the OpenCL module for AMD. It is not enough for OpenCV not only to set the option WITH_OPENCL=OFF, a lot of special hardware accelerations are still active (AMD / VA Intel, etc.). Can you please post the output from:

opencv_version --hw
opencv_version --opencl
opencv_version -v --opencl

Maik</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1841825</commentid>
    <comment_count>126</comment_count>
    <who name="">timokau</who>
    <bug_when>2019-03-04 21:53:25 +0000</bug_when>
    <thetext>Sure, happy this bug isn&apos;t being forgotten.

$ opencv_version --hw
3.4.5
OpenCV&apos;s HW features list:
    ID=  1 (MMX) -&gt; ON
    ID=  2 (SSE) -&gt; ON
    ID=  3 (SSE2) -&gt; ON
    ID=  4 (SSE3) -&gt; ON
    ID=  5 (SSSE3) -&gt; ON
    ID=  6 (SSE4.1) -&gt; ON
    ID=  7 (SSE4.2) -&gt; ON
    ID=  8 (POPCNT) -&gt; ON
    ID=  9 (FP16) -&gt; ON
    ID= 10 (AVX) -&gt; ON
    ID= 11 (AVX2) -&gt; N/A
    ID= 12 (FMA3) -&gt; N/A
    ID= 13 (AVX512F) -&gt; N/A
    ID= 14 (AVX512BW) -&gt; N/A
    ID= 15 (AVX512CD) -&gt; N/A
    ID= 16 (AVX512DQ) -&gt; N/A
    ID= 17 (AVX512ER) -&gt; N/A
    ID= 18 (AVX512IFMA) -&gt; N/A
    ID= 19 (AVX512PF) -&gt; N/A
    ID= 20 (AVX512VBMI) -&gt; N/A
    ID= 21 (AVX512VL) -&gt; N/A
    ID=100 (NEON) -&gt; N/A
    ID=200 (VSX) -&gt; N/A
    ID=201 (VSX3) -&gt; N/A
    ID=256 (AVX512-SKX) -&gt; N/A
Total available: 10

$ opencv_version --opencl
3.4.5
OpenCL is disabled

$ opencv_version -v --opencl
(build info elided)
OpenCL is disabled</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1841826</commentid>
    <comment_count>127</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2019-03-04 21:57:53 +0000</bug_when>
    <thetext>I get a lot more output here at &quot;opencv_version -v --opencl&quot;. Please try &quot;opencv_version -v&quot;.

Maik</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1841828</commentid>
    <comment_count>128</comment_count>
    <who name="">timokau</who>
    <bug_when>2019-03-04 22:00:54 +0000</bug_when>
    <thetext>That only gives the first part:

$ opencv_version -v
(build info elided)


(note that that is the literal output, I didn&apos;t elide anything)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1841830</commentid>
    <comment_count>129</comment_count>
    <who name="">timokau</who>
    <bug_when>2019-03-04 22:03:34 +0000</bug_when>
    <thetext>Seems like my distro is doing that on purpose: https://github.com/NixOS/nixpkgs/blob/master/pkgs/development/libraries/opencv/3.x.nix#L172

I&apos;ll try changing that.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1841834</commentid>
    <comment_count>130</comment_count>
    <who name="">timokau</who>
    <bug_when>2019-03-04 22:22:20 +0000</bug_when>
    <thetext>Okay, here it is:

$ opencv_version -v --opencl

General configuration for OpenCV 3.4.5 =====================================
  Version control:               unknown

  Extra modules:
    Location (extra):            /build/opencv_contrib
    Version control (extra):     unknown

  Platform:
    Timestamp:                   1970-01-01T00:00:01Z
    Host:                        Linux 4.14.104 x86_64
    CMake:                       3.12.1
    CMake generator:             Unix Makefiles
    CMake build tool:            /nix/store/sf2wwp8m7vk61vk34rhn9pslgs0ci2v4-gnumake-4.2.1/bin/make
    Configuration:               Release

  CPU/HW features:
    Baseline:                    SSE SSE2 SSE3
      requested:                 SSE3
    Dispatched code generation:  SSE4_1 SSE4_2 FP16 AVX AVX2 AVX512_SKX
      requested:                 SSE4_1 SSE4_2 AVX FP16 AVX2 AVX512_SKX
      SSE4_1 (4 files):          + SSSE3 SSE4_1
      SSE4_2 (1 files):          + SSSE3 SSE4_1 POPCNT SSE4_2
      FP16 (0 files):            + SSSE3 SSE4_1 POPCNT SSE4_2 FP16 AVX
      AVX (5 files):             + SSSE3 SSE4_1 POPCNT SSE4_2 AVX
      AVX2 (10 files):           + SSSE3 SSE4_1 POPCNT SSE4_2 FP16 FMA3 AVX AVX2
      AVX512_SKX (1 files):      + SSSE3 SSE4_1 POPCNT SSE4_2 FP16 FMA3 AVX AVX2 AVX_512F AVX512_SKX

  C/C++:
    Built as dynamic libs?:      YES
    C++11:                       YES
    C++ Compiler:                /nix/store/klci955kxil7q32ggran6lnhpnkk8yjz-gcc-wrapper-7.3.0/bin/g++  (ver 7.3.0)
    C++ flags (Release):         -fsigned-char -W -Wall -Werror=return-type -Werror=non-virtual-dtor -Werror=address -Werror=sequence-point -Wformat -Werror=format-security -Wmissing-declarations -Wundef -Winit-self -Wpointer-arith -Wshadow -Wsign-promo -Wuninitialized -Winit-self -Wno-narrowing -Wno-delete-non-virtual-dtor -Wno-comment -Wimplicit-fallthrough=3 -Wno-strict-overflow -fdiagnostics-show-option -Wno-long-long -pthread -fomit-frame-pointer -ffunction-sections -fdata-sections  -msse -msse2 -msse3 -fvisibility=hidden -fvisibility-inlines-hidden -fopenmp -O3 -DNDEBUG  -DNDEBUG
    C++ flags (Debug):           -fsigned-char -W -Wall -Werror=return-type -Werror=non-virtual-dtor -Werror=address -Werror=sequence-point -Wformat -Werror=format-security -Wmissing-declarations -Wundef -Winit-self -Wpointer-arith -Wshadow -Wsign-promo -Wuninitialized -Winit-self -Wno-narrowing -Wno-delete-non-virtual-dtor -Wno-comment -Wimplicit-fallthrough=3 -Wno-strict-overflow -fdiagnostics-show-option -Wno-long-long -pthread -fomit-frame-pointer -ffunction-sections -fdata-sections  -msse -msse2 -msse3 -fvisibility=hidden -fvisibility-inlines-hidden -fopenmp -g  -O0 -DDEBUG -D_DEBUG
    C Compiler:                  /nix/store/klci955kxil7q32ggran6lnhpnkk8yjz-gcc-wrapper-7.3.0/bin/gcc
    C flags (Release):           -fsigned-char -W -Wall -Werror=return-type -Werror=non-virtual-dtor -Werror=address -Werror=sequence-point -Wformat -Werror=format-security -Wmissing-declarations -Wmissing-prototypes -Wstrict-prototypes -Wundef -Winit-self -Wpointer-arith -Wshadow -Wuninitialized -Winit-self -Wno-narrowing -Wno-comment -Wimplicit-fallthrough=3 -Wno-strict-overflow -fdiagnostics-show-option -Wno-long-long -pthread -fomit-frame-pointer -ffunction-sections -fdata-sections  -msse -msse2 -msse3 -fvisibility=hidden -fopenmp -O3 -DNDEBUG  -DNDEBUG
    C flags (Debug):             -fsigned-char -W -Wall -Werror=return-type -Werror=non-virtual-dtor -Werror=address -Werror=sequence-point -Wformat -Werror=format-security -Wmissing-declarations -Wmissing-prototypes -Wstrict-prototypes -Wundef -Winit-self -Wpointer-arith -Wshadow -Wuninitialized -Winit-self -Wno-narrowing -Wno-comment -Wimplicit-fallthrough=3 -Wno-strict-overflow -fdiagnostics-show-option -Wno-long-long -pthread -fomit-frame-pointer -ffunction-sections -fdata-sections  -msse -msse2 -msse3 -fvisibility=hidden -fopenmp -g  -O0 -DDEBUG -D_DEBUG
    Linker flags (Release):      
    Linker flags (Debug):        
    ccache:                      NO
    Precompiled headers:         YES
    Extra dependencies:          dl m pthread rt
    3rdparty dependencies:

  OpenCV modules:
    To be built:                 aruco bgsegm bioinspired calib3d ccalib core datasets dnn dnn_objdetect dpm face features2d flann fuzzy hdf hfs highgui img_hash imgcodecs imgproc java_bindings_generator line_descriptor ml objdetect optflow phase_unwrapping photo plot python_bindings_generator reg rgbd saliency sfm shape stereo stitching structured_light superres surface_matching text tracking video videoio videostab xfeatures2d ximgproc xobjdetect xphoto
    Disabled:                    world
    Disabled by dependency:      -
    Unavailable:                 cnn_3dobj cudaarithm cudabgsegm cudacodec cudafeatures2d cudafilters cudaimgproc cudalegacy cudaobjdetect cudaoptflow cudastereo cudawarping cudev cvv freetype java js matlab ovis python2 python3 ts viz
    Applications:                apps
    Documentation:               NO
    Non-free algorithms:         NO

  GUI: 
    GTK+:                        NO
    VTK support:                 NO

  Media I/O: 
    ZLib:                        /nix/store/nsrwlly5ikwhppcslaazp547kh7q7j6s-zlib-1.2.11/lib/libz.so (ver 1.2.11)
    JPEG:                        /nix/store/yr8mbackq6bks0g3vhr7hkzh841r1sv2-libjpeg-turbo-2.0.1/lib/libjpeg.so (ver 62)
    WEBP:                        /nix/store/va9xi1k1w5bsd182k0lqmwki34m7skja-libwebp-1.0.1/lib/libwebp.so (ver encoder: 0x020e)
    PNG:                         /nix/store/px5w0kjsn31dcs1zscqss8zjxkb9j45m-libpng-apng-1.6.35/lib/libpng.so (ver 1.6.35)
    TIFF:                        /nix/store/plihhafcap43qq6qab4f8gzfcmfiy00b-libtiff-4.0.10/lib/libtiff.so (ver 42 / 4.0.10)
    JPEG 2000:                   /nix/store/3bpn824b669kh58ip7165ddmm8sqvjyn-jasper-2.0.14/lib/libjasper.so (ver 2.0.14)
    OpenEXR:                     /nix/store/l6z0wxmsb8psnzsj344ga0v06r685c0a-ilmbase-2.3.0/lib/libImath.so /nix/store/a97cislj7mcj449m9lmmzi2pfki4gwbh-openexr-2.3.0/lib/libIlmImf.so /nix/store/l6z0wxmsb8psnzsj344ga0v06r685c0a-ilmbase-2.3.0/lib/libIex.so /nix/store/l6z0wxmsb8psnzsj344ga0v06r685c0a-ilmbase-2.3.0/lib/libHalf.so /nix/store/l6z0wxmsb8psnzsj344ga0v06r685c0a-ilmbase-2.3.0/lib/libIlmThread.so (ver Unknown)
    HDR:                         YES
    SUNRASTER:                   YES
    PXM:                         YES

  Video I/O:
    DC1394:                      NO
    FFMPEG:                      NO
      avcodec:                   NO
      avformat:                  NO
      avutil:                    NO
      swscale:                   NO
      avresample:                NO
    GStreamer:                   NO
    libv4l/libv4l2:              NO
    v4l/v4l2:                    linux/videodev2.h

  Parallel framework:            OpenMP

  Trace:                         YES (with Intel ITT)

  Other third-party libraries:
    Lapack:                      YES (/nix/store/m7qq6kqm1zwkjc3li2ar9iwmlr8cfdww-openblas-0.3.4/lib/libopenblas.so)
    Eigen:                       YES (ver 3.3.5)
    Custom HAL:                  NO
    Protobuf:                    /nix/store/m5ssl9mglx7lycznxvik3n2kbrbwn159-protobuf-3.6.1/lib/libprotobuf.so (3.6.1)

  OpenCL:                        YES (no extra features)
    Include path:                /build/source/3rdparty/include/opencl/1.2
    Link libraries:              Dynamic load

  Python (for build):            NO

  Java:                          
    ant:                         NO
    JNI:                         NO
    Java wrappers:               NO
    Java tests:                  NO

  Install to:                    /nix/store/rw6zc3wpl7ansi127man9bx92f9jr95i-opencv-3.4.5
-----------------------------------------------------------------


OpenCL is disabled</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1841877</commentid>
    <comment_count>131</comment_count>
    <who name="">caulier.gilles</who>
    <bug_when>2019-03-05 02:31:49 +0000</bug_when>
    <thetext>from your last output :

OpenCL:                        YES (no extra features)
    Include path:                /build/source/3rdparty/include/opencl/1.2
    Link libraries:              Dynamic load

==&gt; Opencl is not disabled</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1841878</commentid>
    <comment_count>132</comment_count>
    <who name="">caulier.gilles</who>
    <bug_when>2019-03-05 02:33:07 +0000</bug_when>
    <thetext>Maik,

What&apos;s about to check for CUDA support in OpenCV ?

Gilles</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1841911</commentid>
    <comment_count>133</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2019-03-05 05:54:04 +0000</bug_when>
    <thetext>CUDA also seems to be active with me, but I do not have an NVIDIA graphics card anymore. Timokau do you have an NVIDIA graphics card with proprietary drivers? Another thing is OpenMP, my OpenCV version of openSUSE is without OpenMP, timokau&apos;s OpenCV is with OpenMP.

Maik</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1841933</commentid>
    <comment_count>134</comment_count>
    <who name="">timokau</who>
    <bug_when>2019-03-05 10:03:55 +0000</bug_when>
    <thetext>Its possible that I didn&apos;t properly disable opencl last time. It looks like I only edited the opencv 2.x build recipe, but then used opencv 3.x for digikam. I&apos;ll re-build with `-DWITH_OPENCL=OFF` and `-DWITH_LAPACK=OFF` and try to reproduce.

My graphics card on my desktop is AMD radeon with open source drivers. On my laptop its intel hd graphics with i915. I&apos;ve seen the segfault on both.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1841948</commentid>
    <comment_count>135</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2019-03-05 11:32:26 +0000</bug_when>
    <thetext>My favorite is OpenMP with you. Build an OpenCV without OpenMP and OpenCL. Look here for other OpenCL options: https://bugs.kde.org/show_bug.cgi?id=401253#c12

Maik</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1842022</commentid>
    <comment_count>136</comment_count>
    <who name="">caulier.gilles</who>
    <bug_when>2019-03-05 16:23:21 +0000</bug_when>
    <thetext>Git commit 6e1533e3e13018e94394409e33be087cad0c8061 by Gilles Caulier.
Committed on 05/03/2019 at 16:22.
Pushed by cgilles into branch &apos;master&apos;.

disable openmp while compiling OpenCV

M  +1    -0    project/bundles/3rdparty/ext_opencv/CMakeLists.txt

https://commits.kde.org/digikam/6e1533e3e13018e94394409e33be087cad0c8061</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1842217</commentid>
    <comment_count>137</comment_count>
    <who name="">caulier.gilles</who>
    <bug_when>2019-03-06 15:31:12 +0000</bug_when>
    <thetext>Good news,

After 2 weeks of works, the Linux AppImage bundle 64 bits is now reconstructed from scratch with:

- All OpenCV options for CUDA, OPenMP, and OPenCL disabled
- A large upgrade of Qt5 from 5.9.7 to 5.11.3.
- An upgrade to KF5 5.55.
- An upgrade to Ffmpeg 3.3.9
- The fontconfig/freetype integration in the bundle to reduce system dependencies


Files can be downloaded here :

https://files.kde.org/digikam/

Please test and report.

Thanks in advance

Gilles Caulier</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1842471</commentid>
    <comment_count>138</comment_count>
    <who name="">timokau</who>
    <bug_when>2019-03-07 16:07:07 +0000</bug_when>
    <thetext>The appimage (digikam-6.1.0-git-20190307T101229-x86-64.appimage) also still segfaults.

No backtrace because I don&apos;t know of an easy way to do that with appimage. But I doubt that it would be particularly useful anyhow.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1842474</commentid>
    <comment_count>139</comment_count>
    <who name="">caulier.gilles</who>
    <bug_when>2019-03-07 16:11:22 +0000</bug_when>
    <thetext>Very simple : &quot;./digikam-6.1.0-git-20190307T101229-x86-64.appimage debug&quot;

Gilles Caulier</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1842523</commentid>
    <comment_count>140</comment_count>
    <who name="">timokau</who>
    <bug_when>2019-03-07 20:55:48 +0000</bug_when>
    <thetext>Okay, did that. Interestingly, the crash happened at the exact moment when I connected a second monitor and set it up with `xrandr`.

&gt; Digikam::DImg::load: &quot;/home/timo/Pictures/pictures/Whatsapp/Media/WhatsApp Images/IMG-20170906-WA0005.jpg&quot;  : JPEG file identified
&gt; Digikam::DImg::load: &quot;/home/timo/Pictures/pictures/Whatsapp/Media/WhatsApp Images/IMG-20170906-WA0006.jpeg&quot;  : JPEG file identified
&gt; Digikam::OpenCVFaceDetector::cascadeResult: detectMultiScale: image size ( 450 , 800 ) searchIncrement 1.1 grouping 3 flags 1 min size ( 26 , 26 )
&gt; Digikam::ActionThreadBase::slotJobFinished: One job is done
&gt; Digikam::FacePipeline::Private::checkFinished: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; Digikam::FacePipeline::Private::checkFinished: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; Digikam::DImg::load: &quot;/home/timo/Pictures/pictures/Whatsapp/Media/WhatsApp Images/IMG-20170906-WA0008.jpeg&quot;  : JPEG file identified
&gt; Digikam::ActionThreadBase::cancel: Cancel Main Thread
&gt; [Thread 0x7fff557fa700 (LWP 14683) exited]
&gt; 
&gt; Thread 435 &quot;Thread (pooled)&quot; received signal SIGSEGV, Segmentation fault.
&gt; [Switching to Thread 0x7fff577fe700 (LWP 13067)]
&gt; 0x0000000000000000 in ?? ()
&gt; (gdb) bt
&gt; #0  0x0000000000000000 in ?? ()
&gt; #1  0x00007ffff69f796d in Digikam::LoadingTask::progressInfo (this=0x4d8f290, img=&lt;optimized out&gt;, progress=0.150000006)
&gt;     at /b/dktemp/digikam-master/core/libs/threadimageio/fileio/loadsavetask.cpp:65
&gt; #2  0x00007ffff67ac7fd in Digikam::JPEGLoader::load (this=this@entry=0x7fff577fd940, filePath=..., observer=observer@entry=0x4d8f2a0)
&gt;     at /b/dktemp/digikam-master/core/libs/dimg/loaders/jpegloader.cpp:470
&gt; #3  0x00007ffff690a609 in Digikam::DImg::load (this=this@entry=0x4d8f488, filePath=..., loadFlagsInt=loadFlagsInt@entry=63, observer=observer@entry=0x4d8f2a0, 
&gt;     rawDecodingSettings=...) at /b/dktemp/digikam-master/core/libs/dimg/dimg.cpp:429
&gt; #4  0x00007ffff690ab80 in Digikam::DImg::load (this=this@entry=0x4d8f488, filePath=..., observer=observer@entry=0x4d8f2a0, rawDecodingSettings=...)
&gt;     at /b/dktemp/digikam-master/core/libs/dimg/dimg.cpp:373
&gt; #5  0x00007ffff69d4405 in Digikam::PreviewLoadingTask::execute (this=0x4d8f290) at /b/dktemp/digikam-master/core/libs/threadimageio/preview/previewtask.cpp:292
&gt; #6  0x00007ffff69eb6e5 in Digikam::LoadSaveThread::run (this=0x7ffff000e3a0) at /b/dktemp/digikam-master/core/libs/threadimageio/fileio/loadsavethread.cpp:133
&gt; #7  0x00007ffff6a1148e in Digikam::DynamicThread::Private::run (this=0x2f52930) at /b/dktemp/digikam-master/core/libs/threads/dynamicthread.cpp:183
&gt; #8  0x0000003aa4eaf7ef in ?? () from /home/timo/.cache/appimage-run/f4633b6497585e35b63894a60bde62dc842e791757a89beb70b9479b22a47952/squashfs-root/usr/lib/libQt5Core.so.5
&gt; #9  0x0000003aa4eb8f14 in ?? () from /home/timo/.cache/appimage-run/f4633b6497585e35b63894a60bde62dc842e791757a89beb70b9479b22a47952/squashfs-root/usr/lib/libQt5Core.so.5
&gt; #10 0x00007ffff6456ef7 in start_thread () from /usr/lib/libpthread.so.0
&gt; #11 0x00007ffff585122f in clone () from /usr/lib/libc.so.6
&gt; (gdb)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1843051</commentid>
    <comment_count>141</comment_count>
    <who name="">caulier.gilles</who>
    <bug_when>2019-03-09 21:01:41 +0000</bug_when>
    <thetext>The crash is completely different now.

I suppose that you use Color Management with your screens. Can you disable the option in Setup dialog and try again ?

Gilles Caulier</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1843054</commentid>
    <comment_count>142</comment_count>
    <who name="">timokau</who>
    <bug_when>2019-03-09 21:27:53 +0000</bug_when>
    <thetext>I&apos;m not sure what you mean. What color management? Where do I disable it?

All settings are at their defaults.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1843134</commentid>
    <comment_count>143</comment_count>
    <who name="">caulier.gilles</who>
    <bug_when>2019-03-10 09:20:20 +0000</bug_when>
    <thetext>Color Management is a workflow settings use to render colors on devices as natural color for human eyes. This include screens, printers, etc... 

More information : https://en.wikipedia.org/wiki/Color_management

In digiKam, the settings is located in Setup dialog to Color Management/Behavior tab. Just turn off the main option on top of this view.

Gilles Caulier</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1843241</commentid>
    <comment_count>144</comment_count>
    <who name="">timokau</who>
    <bug_when>2019-03-10 15:58:51 +0000</bug_when>
    <thetext>With color management disabled:

&gt; Digikam::OpenCVFaceDetector::cascadeResult: detectMultiScale gave ()
&gt; Digikam::OpenCVFaceDetector::verifyFace: Verifying face QRect(192,392 46x46) using cascade 8
&gt; Digikam::OpenCVFaceDetector::verifyFace: feature QRectF(0.1,0.4 0.8x0.6) QRect(192,392 46x46) QRect(197,410 37x28)
&gt; Digikam::OpenCVFaceDetector::cascadeResult: detectMultiScale: image size ( 37 , 28 ) searchIncrement 1.1 grouping 2 flags 0 min size ( 5 , 5 )
&gt; Digikam::OpenCVFaceDetector::cascadeResult: detectMultiScale gave ()
&gt; Digikam::DetectionWorker::process: Found 0 faces in &quot;IMG-20131105-WA0002.jpg&quot; QSize(816, 612) QSize(816, 612)
&gt; Digikam::DatabaseWriter::process: Removing old entries ()
&gt; Digikam::OpenCVFaceDetector::cascadeResult: detectMultiScale: image size ( 600 , 800 ) searchIncrement 1.1 grouping 3 flags 1 min size ( 24 , 24 )
&gt; [New Thread 0x7fff557fa700 (LWP 14010)]
&gt; 
&gt; Thread 38 &quot;Thread (pooled)&quot; received signal SIGSEGV, Segmentation fault.
&gt; [Switching to Thread 0x7fff60c28700 (LWP 6473)]
&gt; 0x00007ffff69f7967 in Digikam::LoadingTask::progressInfo (this=0x3158ad0, 
&gt;     img=0x3158cc8, progress=0.850000024)
&gt;     at /b/dktemp/digikam-master/core/libs/threadimageio/fileio/loadsavetask.cpp:65
&gt; 65      /b/dktemp/digikam-master/core/libs/threadimageio/fileio/loadsavetask.cpp: No such file or directory.
&gt; (gdb) bt
&gt; #0  0x00007ffff69f7967 in Digikam::LoadingTask::progressInfo (this=0x3158ad0, img=0x3158cc8, progress=0.850000024)
&gt;     at /b/dktemp/digikam-master/core/libs/threadimageio/fileio/loadsavetask.cpp:65
&gt; #1  0x00007ffff67ac7fd in Digikam::JPEGLoader::load (this=this@entry=0x7fff60c27940, filePath=..., observer=observer@entry=0x3158ae0)
&gt;     at /b/dktemp/digikam-master/core/libs/dimg/loaders/jpegloader.cpp:470
&gt; #2  0x00007ffff690a609 in Digikam::DImg::load (this=this@entry=0x3158cc8, filePath=..., loadFlagsInt=loadFlagsInt@entry=63, observer=observer@entry=0x3158ae0, 
&gt;     rawDecodingSettings=...) at /b/dktemp/digikam-master/core/libs/dimg/dimg.cpp:429
&gt; #3  0x00007ffff690ab80 in Digikam::DImg::load (this=this@entry=0x3158cc8, filePath=..., observer=observer@entry=0x3158ae0, rawDecodingSettings=...)
&gt;     at /b/dktemp/digikam-master/core/libs/dimg/dimg.cpp:373
&gt; #4  0x00007ffff69d4405 in Digikam::PreviewLoadingTask::execute (this=0x3158ad0) at /b/dktemp/digikam-master/core/libs/threadimageio/preview/previewtask.cpp:292
&gt; #5  0x00007ffff69eb6e5 in Digikam::LoadSaveThread::run (this=0x3eb29e0) at /b/dktemp/digikam-master/core/libs/threadimageio/fileio/loadsavethread.cpp:133
&gt; #6  0x00007ffff6a1148e in Digikam::DynamicThread::Private::run (this=0x59e7830) at /b/dktemp/digikam-master/core/libs/threads/dynamicthread.cpp:183
&gt; #7  0x0000003aa4eaf7ef in ?? () from /home/timo/.cache/appimage-run/f4633b6497585e35b63894a60bde62dc842e791757a89beb70b9479b22a47952/squashfs-root/usr/lib/libQt5Core.so.5
&gt; #8  0x0000003aa4eb8f14 in ?? () from /home/timo/.cache/appimage-run/f4633b6497585e35b63894a60bde62dc842e791757a89beb70b9479b22a47952/squashfs-root/usr/lib/libQt5Core.so.5
&gt; #9  0x00007ffff6456ef7 in start_thread () from /usr/lib/libpthread.so.0
&gt; #10 0x00007ffff585122f in clone () from /usr/lib/libc.so.6
&gt; (gdb)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1844470</commentid>
    <comment_count>145</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2019-03-15 22:14:41 +0000</bug_when>
    <thetext>Git commit e31d8c418b9b334d9aa31d4835e34a0c781ae6f4 by Maik Qualmann.
Committed on 15/03/2019 at 22:13.
Pushed by mqualmann into branch &apos;master&apos;.

fix big memory allocation failure if rotate DImg

M  +4    -4    core/libs/dimg/dimg.cpp

https://commits.kde.org/digikam/e31d8c418b9b334d9aa31d4835e34a0c781ae6f4</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1844473</commentid>
    <comment_count>146</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2019-03-15 22:30:38 +0000</bug_when>
    <thetext>Git commit abdf66b5c6ba7fc37fec0853db0e08a45b6a3ad3 by Maik Qualmann.
Committed on 15/03/2019 at 22:29.
Pushed by mqualmann into branch &apos;master&apos;.

Revert &quot;fix big memory allocation failure if rotate DImg&quot;
Sorry for noise

M  +4    -4    core/libs/dimg/dimg.cpp

https://commits.kde.org/digikam/abdf66b5c6ba7fc37fec0853db0e08a45b6a3ad3</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1844500</commentid>
    <comment_count>147</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2019-03-16 06:07:32 +0000</bug_when>
    <thetext>Git commit b89f553cce1174f2a328fb7e271729897346dd44 by Maik Qualmann.
Committed on 16/03/2019 at 06:06.
Pushed by mqualmann into branch &apos;master&apos;.

test with malloc to allocate DImg memory

M  +9    -9    core/libs/dimg/dimg.cpp
M  +1    -1    core/libs/dimg/dimg_p.h
M  +1    -1    core/libs/dimg/loaders/dimgloader.cpp
M  +3    -8    core/libs/dimg/loaders/dimgloader.h
M  +8    -7    core/libs/dimg/loaders/jp2kloader.cpp
M  +3    -3    core/libs/dimg/loaders/jpegloader.cpp
M  +2    -2    core/libs/dimg/loaders/pngloader.cpp
M  +2    -2    core/libs/dimg/loaders/rawloader.cpp
M  +49   -23   core/libs/dimg/loaders/tiffloader.cpp

https://commits.kde.org/digikam/b89f553cce1174f2a328fb7e271729897346dd44</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1844525</commentid>
    <comment_count>148</comment_count>
    <who name="">timokau</who>
    <bug_when>2019-03-16 10:55:42 +0000</bug_when>
    <thetext>With the latest commit (build from source, all-default settings):

&gt; digikam.facesengine: detectMultiScale: image size ( 103 , 77 ) searchIncrement 1.1 grouping 2 flags 0 min size ( 13 , 13 )
&gt; digikam.facesengine: detectMultiScale gave (QRect(27,38 46x27))
&gt; digikam.facesengine: Verifying face QRect(357,331 66x66) using cascade 0
&gt; digikam.facesengine: detectMultiScale: image size ( 146 , 146 ) searchIncrement 1.1 grouping 3 flags 0 min size ( 40 , 40 )
&gt; digikam.facesengine: detectMultiScale gave ()
&gt; digikam.facesengine: Verifying face QRect(357,331 66x66) using cascade 1
&gt; digikam.facesengine: detectMultiScale: image size ( 146 , 146 ) searchIncrement 1.1 grouping 3 flags 0 min size ( 40 , 40 )
&gt; 
&gt; Thread 477 &quot;Thread (pooled)&quot; received signal SIGSEGV, Segmentation fault.
&gt; [Switching to Thread 0x7fff42ffc700 (LWP 15258)]
&gt; --Type &lt;RET&gt; for more, q to quit, c to continue without paging--
&gt; 0x00007ffff6d366c8 in Digikam::DImgLoader::granularity (this=0x7fff42fec7d0, 
&gt;     observer=0x3364350, total=3240, progressSlice=&lt;optimized out&gt;)
&gt;     at /home/timo/tmp/source/core/libs/dimg/loaders/dimgloader.cpp:81
&gt; 81              granularity = (int)((total / (20 * progressSlice)) / observer-&gt;granularity());
&gt; (gdb) 
&gt; (gdb) bt
&gt; #0  0x00007ffff6d366c8 in Digikam::DImgLoader::granularity (this=0x7fff42fec7d0, observer=0x3364350, total=3240, progressSlice=&lt;optimized out&gt;)
&gt;     at /home/timo/tmp/source/core/libs/dimg/loaders/dimgloader.cpp:81
&gt; #1  0x00007ffff6d411be in Digikam::JPEGLoader::load (this=this@entry=0x7fff42fec7d0, filePath=..., observer=observer@entry=0x3364350)
&gt;     at /home/timo/tmp/source/core/libs/dimg/loaders/jpegloader.cpp:460
&gt; #2  0x00007ffff6e95c80 in Digikam::DImg::load (this=this@entry=0x3364538, filePath=..., loadFlagsInt=loadFlagsInt@entry=63, observer=observer@entry=0x3364350, 
&gt;     rawDecodingSettings=...) at /home/timo/tmp/source/core/libs/dimg/dimg.cpp:429
&gt; #3  0x00007ffff6e96280 in Digikam::DImg::load (this=this@entry=0x3364538, filePath=..., observer=observer@entry=0x3364350, rawDecodingSettings=...)
&gt;     at /home/timo/tmp/source/core/libs/dimg/dimg.cpp:373
&gt; #4  0x00007ffff6f522bb in Digikam::PreviewLoadingTask::execute (this=0x3364340) at /home/timo/tmp/source/core/libs/threadimageio/preview/previewtask.cpp:292
&gt; #5  0x00007ffff6f6994e in Digikam::LoadSaveThread::run (this=0x4db0000) at /home/timo/tmp/source/core/libs/threadimageio/fileio/loadsavethread.cpp:133
&gt; #6  0x00007ffff6f8b3ce in Digikam::DynamicThread::Private::run (this=0x2b9d420) at /home/timo/tmp/source/core/libs/threads/dynamicthread.cpp:183
&gt; #7  0x00007ffff0f2b022 in ?? () from /nix/store/9mdqkdb7iwdw4ripbqdpazbqnx7wc2qy-qtbase-5.12.0/lib/libQt5Core.so.5
&gt; #8  0x00007ffff0f268c2 in ?? () from /nix/store/9mdqkdb7iwdw4ripbqdpazbqnx7wc2qy-qtbase-5.12.0/lib/libQt5Core.so.5
&gt; #9  0x00007ffff6500ef7 in start_thread () from /nix/store/681354n3k44r8z90m35hm8945vsp95h1-glibc-2.27/lib/libpthread.so.0
&gt; #10 0x00007fffef49922f in clone () from /nix/store/681354n3k44r8z90m35hm8945vsp95h1-glibc-2.27/lib/libc.so.6</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1844536</commentid>
    <comment_count>149</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2019-03-16 11:37:53 +0000</bug_when>
    <thetext>Git commit a09223b38b261427b08241b6275c35b5235661cc by Maik Qualmann.
Committed on 16/03/2019 at 11:36.
Pushed by mqualmann into branch &apos;master&apos;.

For a test the Jpeg loader is deactivated, now the QImage loader is used

M  +2    -1    core/libs/dimg/dimg.cpp

https://commits.kde.org/digikam/a09223b38b261427b08241b6275c35b5235661cc</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1844615</commentid>
    <comment_count>150</comment_count>
    <who name="">timokau</who>
    <bug_when>2019-03-16 17:02:29 +0000</bug_when>
    <thetext>With a09223b38b261427b08241b6275c35b5235661cc:

&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.general: Action Thread run  1  new jobs
&gt; digikam.dimg: &quot;/home/timo/Pictures/pictures/Whatsapp/Media/WhatsApp Images/IMG-20170904-WA0004.jpg&quot;  : QIMAGE file identified
&gt; [New Thread 0x7fff44de8700 (LWP 2077)]
&gt; 
&gt; Thread 4140 &quot;Thread (pooled)&quot; received signal SIGSEGV, Segmentation fault.
&gt; [Switching to Thread 0x7fff37fff700 (LWP 769)]
&gt; 0xffffffffffffffff in ?? ()
&gt; (gdb) bt
&gt; #0  0xffffffffffffffff in ?? ()
&gt; #1  0x00007ffff6f75e5d in Digikam::LoadingTask::progressInfo (this=0x36a62a0, img=&lt;optimized out&gt;, progress=0.899999976)
&gt;     at /home/timo/tmp/source/core/libs/threadimageio/fileio/loadsavetask.cpp:65
&gt; #2  0x00007ffff6d49329 in Digikam::QImageLoader::load (this=this@entry=0x7fff37fef7d0, filePath=..., observer=observer@entry=0x36a62b0)
&gt;     at /home/timo/tmp/source/core/libs/dimg/loaders/qimageloader.cpp:62
&gt; #3  0x00007ffff6e95751 in Digikam::DImg::load (this=this@entry=0x36a6498, filePath=..., loadFlagsInt=loadFlagsInt@entry=63, observer=observer@entry=0x36a62b0, 
&gt;     rawDecodingSettings=...) at /home/timo/tmp/source/core/libs/dimg/dimg.cpp:566
&gt; #4  0x00007ffff6e96370 in Digikam::DImg::load (this=this@entry=0x36a6498, filePath=..., observer=observer@entry=0x36a62b0, rawDecodingSettings=...)
&gt;     at /home/timo/tmp/source/core/libs/dimg/dimg.cpp:373
&gt; #5  0x00007ffff6f5240b in Digikam::PreviewLoadingTask::execute (this=0x36a62a0) at /home/timo/tmp/source/core/libs/threadimageio/preview/previewtask.cpp:292
&gt; #6  0x00007ffff6f69a9e in Digikam::LoadSaveThread::run (this=0x2f4d670) at /home/timo/tmp/source/core/libs/threadimageio/fileio/loadsavethread.cpp:133
&gt; #7  0x00007ffff6f8b51e in Digikam::DynamicThread::Private::run (this=0x5288720) at /home/timo/tmp/source/core/libs/threads/dynamicthread.cpp:183
&gt; #8  0x00007ffff0f2b022 in ?? () from /nix/store/9mdqkdb7iwdw4ripbqdpazbqnx7wc2qy-qtbase-5.12.0/lib/libQt5Core.so.5
&gt; #9  0x00007ffff0f268c2 in ?? () from /nix/store/9mdqkdb7iwdw4ripbqdpazbqnx7wc2qy-qtbase-5.12.0/lib/libQt5Core.so.5
&gt; #10 0x00007ffff6500ef7 in start_thread () from /nix/store/681354n3k44r8z90m35hm8945vsp95h1-glibc-2.27/lib/libpthread.so.0
&gt; #11 0x00007fffef49922f in clone () from /nix/store/681354n3k44r8z90m35hm8945vsp95h1-glibc-2.27/lib/libc.so.6
&gt; (gdb)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1852951</commentid>
    <comment_count>151</comment_count>
    <who name="">caulier.gilles</who>
    <bug_when>2019-04-27 07:58:05 +0000</bug_when>
    <thetext>Maik, i&apos;m back to this bug as i found some help with the clang 8 used to compile whole digiKam.

Maegia 7 beta 3 come with this version of clang (in Mageia 6, only clang 3.9 was provided). The step is enormous and the results very interesting.

The compilation with clang 8 generate plenty of warnings about virtual functions.

Gilles</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1852952</commentid>
    <comment_count>152</comment_count>
    <who name="">caulier.gilles</who>
    <bug_when>2019-04-27 08:11:38 +0000</bug_when>
    <thetext>I will generate a full backtrace and post here. Please be patient, i must update the whole Mageia 7 before.

Note : Compilation with Clang is more slower than Gcc 8 (also available under Mageia 7, but there are plenty of test and cache generated in background. The clang-tools include also a collection of CLI programs that we can use to format or port digiKam code to a more recent C++11 syntax (as zero pointer init =&gt; numptr). Look this commit for ex :

https://cgit.kde.org/kipi-plugins.git/commit/?id=df28fc170c916cad267993a532b08b8fe4fd4c43

Gilles</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1852965</commentid>
    <comment_count>153</comment_count>
    <who name="">timokau</who>
    <bug_when>2019-04-27 09:01:56 +0000</bug_when>
    <thetext>Thank you both for not forgetting about this.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1852981</commentid>
    <comment_count>154</comment_count>
      <attachid>119667</attachid>
    <who name="">caulier.gilles</who>
    <bug_when>2019-04-27 11:25:30 +0000</bug_when>
    <thetext>Created attachment 119667
clang 8 compilation trace

Maik,

Look well the warnings around core/libs/threadimageio/*

There are plenty of &quot;-Winconsistent-missing-override&quot; issues. I don&apos;t know why GCC 8 is not verbose like this...

Gilles</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1852992</commentid>
    <comment_count>155</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2019-04-27 12:20:44 +0000</bug_when>
    <thetext>We suppress the messages with GCC. I will reactivate the warnings and fix everything step by step...there are many...
I suspect that Clang does not have a CLI tool for these warningst o automatically fix it in the source code..

Maik</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1873837</commentid>
    <comment_count>156</comment_count>
    <who name="">timokau</who>
    <bug_when>2019-08-08 20:49:33 +0000</bug_when>
    <thetext>I can still reproduce this (or at least some segfault during face dection) with current master (33d0457e20adda97c003f3dee652a1749406ff9f):

&gt; digikam.facesengine: detectMultiScale: image size ( 480 , 800 ) searchIncrement 1.1 grouping 3 flags 1 min size ( 24 , 24 )
&gt; digikam.metaengine: Exif color-space tag is sRGB. Using default sRGB ICC profile.
&gt; digikam.dimg: &quot;/home/timo/tmp/deletable-pics/Android/Whatsapp/IMG-20130807-WA0006.jpg&quot;  : JPEG file identified
&gt; digikam.dimg: &quot;/home/timo/tmp/deletable-pics/Android/Whatsapp/IMG-20130809-WA0000.jpg&quot;  : JPEG file identified
&gt; digikam.metaengine: Exif color-space tag is sRGB. Using default sRGB ICC profile.
&gt; digikam.facesengine: detectMultiScale gave ()
&gt; digikam.general: Found 0 faces in &quot;IMG-20130705-WA0000.jpg&quot; QSize(480, 800) QSize(480, 800)
&gt; digikam.facesengine: detectMultiScale: image size ( 800 , 600 ) searchIncrement 1.1 grouping 3 flags 1 min size ( 24 , 24 )
&gt; digikam.dimg: &quot;/home/timo/tmp/deletable-pics/P/G/IMG_1683.JPG&quot;  : JPEG file identified
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.general: Using  4  CPU core to run threads
&gt; [New Thread 0x7ffeebfff700 (LWP 15844)]
&gt; digikam.general: Action Thread run  1  new jobs
&gt; [New Thread 0x7fff23ffe700 (LWP 15845)]
&gt; digikam.database: &quot; ( ( (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=?  ) ) &quot;
&gt; digikam.database: Search query:
&gt;  &quot;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=?  ) )  );&quot; 
&gt;  (QVariant(int, 281), QVariant(int, 281), QVariant(QString, &quot;autodetectedPerson&quot;), QVariant(int, 281), QVariant(int, 281), QVariant(QString, &quot;autodetectedFace&quot;), QVariant(int, 281), QVariant(int, 281), QVariant(QString, &quot;tagRegion&quot;))
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; corrupted size vs. prev_size
&gt; digikam.database: Search result: 3031
&gt; digikam.general: Removing old entries ()
&gt; 
&gt; Thread 48 &quot;Thread (pooled)&quot; received signal SIGSEGV, Segmentation fault.
&gt; [Switching to Thread 0x7fff3491f700 (LWP 18350)]
&gt; 0x00007fffef39672a in operator==(QString const&amp;, QString const&amp;) ()
&gt;    from /nix/store/683732s7dq6bxrl267lcadl5lvn6i4nh-qtbase-5.12.0/lib/libQt5Core.so.5
&gt; (gdb) bt
&gt; #0  0x00007fffef39672a in operator==(QString const&amp;, QString const&amp;) ()
&gt;    from /nix/store/683732s7dq6bxrl267lcadl5lvn6i4nh-qtbase-5.12.0/lib/libQt5Core.so.5
&gt; #1  0x00007ffff6f5a575 in Digikam::LoadingDescription::equalsIgnoreReducedVersion (this=&lt;optimized out&gt;, other=...)
&gt;     at /home/timo/tmp/source/core/libs/threadimageio/fileio/loadingdescription.cpp:313
&gt; #2  0x00007ffff6f65f43 in Digikam::SharedLoadingTask::notifyNewLoadingProcess (this=0x2edc370, process=&lt;optimized out&gt;, 
&gt;     description=...) at /home/timo/tmp/source/core/libs/threadimageio/fileio/loadsavetask.cpp:429
&gt; #3  0x00007ffff6f5bcb0 in Digikam::LoadingCache::notifyNewLoadingProcess (this=this@entry=0x5e59e0, 
&gt;     process=process@entry=0x3a9ef60, description=...) at /home/timo/tmp/source/core/libs/threadimageio/fileio/loadingcache.cpp:240
&gt; #4  0x00007ffff6f416c4 in Digikam::PreviewLoadingTask::execute (this=0x3a9ed90)
&gt;     at /home/timo/tmp/source/core/libs/threadimageio/preview/previewtask.cpp:149
&gt; #5  0x00007ffff6f58cde in Digikam::LoadSaveThread::run (this=0x6e416d0)
&gt;     at /home/timo/tmp/source/core/libs/threadimageio/fileio/loadsavethread.cpp:133
&gt; #6  0x00007ffff6f79ffe in Digikam::DynamicThread::Private::run (this=0x6d497c0)
&gt;     at /home/timo/tmp/source/core/libs/threads/dynamicthread.cpp:183
&gt; #7  0x00007fffef3127d2 in ?? () from /nix/store/683732s7dq6bxrl267lcadl5lvn6i4nh-qtbase-5.12.0/lib/libQt5Core.so.5
&gt; #8  0x00007fffef30e062 in ?? () from /nix/store/683732s7dq6bxrl267lcadl5lvn6i4nh-qtbase-5.12.0/lib/libQt5Core.so.5
&gt; #9  0x00007ffff64e1ef7 in start_thread () from /nix/store/iykxb0bmfjmi7s53kfg6pjbfpd8jmza6-glibc-2.27/lib/libpthread.so.0
&gt; #10 0x00007fffed6eb22f in clone () from /nix/store/iykxb0bmfjmi7s53kfg6pjbfpd8jmza6-glibc-2.27/lib/libc.so.6
&gt; (gdb)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1873842</commentid>
    <comment_count>157</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2019-08-08 21:16:52 +0000</bug_when>
    <thetext>Git commit 913484add447c51d0dc6d93fc4324870368f8136 by Maik Qualmann.
Committed on 08/08/2019 at 21:15.
Pushed by mqualmann into branch &apos;master&apos;.

clear LoadingProcessListener QList

M  +5    -0    core/libs/threadimageio/fileio/loadsavetask.h

https://invent.kde.org/kde/digikam/commit/913484add447c51d0dc6d93fc4324870368f8136</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1873910</commentid>
    <comment_count>158</comment_count>
    <who name="">timokau</who>
    <bug_when>2019-08-09 09:37:21 +0000</bug_when>
    <thetext>With commit 913484add447c51d0dc6d93fc4324870368f8136:

&gt; digikam.facesengine: detectMultiScale: image size ( 122 , 136 ) searchIncrement 1.1 grouping 3 flags 0 min size ( 34 , 34 )
&gt; digikam.facesengine: detectMultiScale gave ()
&gt; digikam.facesengine: Verifying face QRect(718,194 56x56) using cascade 4
&gt; digikam.facesengine: detectMultiScale: image size ( 122 , 136 ) searchIncrement 1.1 grouping 3 flags 0 min size ( 34 , 34 )
&gt; digikam.facesengine: detectMultiScale gave ()
&gt; digikam.facesengine: Verifying face QRect(718,194 56x56) using cascade 5
&gt; digikam.facesengine: feature QRectF(0,0 0.6x0.6) QRect(718,194 56x56) QRect(718,194 34x34)
&gt; digikam.facesengine: detectMultiScale: image size ( 34 , 34 ) searchIncrement 1.1 grouping 2 flags 0 min size ( 6 , 6 )
&gt; digikam.facesengine: detectMultiScale gave ()
&gt; digikam.facesengine: Verifying face QRect(718,194 56x56) using cascade 6
&gt; digikam.facesengine: feature QRectF(0.4,0 0.6x0.6) QRect(718,194 56x56) QRect(740,194 34x34)
&gt; digikam.facesengine: detectMultiScale: image size ( 34 , 34 ) searchIncrement 1.1 grouping 2 flags 0 min size ( 6 , 6 )
&gt; digikam.facesengine: detectMultiScale gave ()
&gt; digikam.facesengine: Verifying face QRect(718,194 56x56) using cascade 7
&gt; digikam.facesengine: feature QRectF(0.2,0.25 0.6x0.6) QRect(718,194 56x56) QRect(729,208 34x34)
&gt; digikam.facesengine: detectMultiScale: image size ( 34 , 34 ) searchIncrement 1.1 grouping 2 flags 0 min size ( 6 , 6 )
&gt; digikam.facesengine: detectMultiScale gave ()
&gt; digikam.facesengine: Verifying face QRect(718,194 56x56) using cascade 8
&gt; digikam.facesengine: feature QRectF(0.1,0.4 0.8x0.6) QRect(718,194 56x56) QRect(724,216 45x34)
&gt; digikam.facesengine: detectMultiScale: image size ( 45 , 34 ) searchIncrement 1.1 grouping 2 flags 0 min size ( 6 , 6 )
&gt; digikam.facesengine: detectMultiScale gave ()
&gt; digikam.general: Found 1 faces in &quot;IMG-20130919-WA0005.jpg&quot; QSize(3264, 2448) QSize(3264, 2448)
&gt; digikam.general: Removing old entries ()
&gt; 
&gt; Thread 42 &quot;Thread (pooled)&quot; received signal SIGSEGV, Segmentation fault.
&gt; [Switching to Thread 0x7fff23b6a700 (LWP 356)]
&gt; QMapData&lt;QString, QVariant&gt;::createNode (left=false, parent=0x0, v=..., k=..., this=0x7fff1461f710) at /nix/store/hy0z060pmjwrdrbb0q
&gt; rii7hnwif8cz1y-qtbase-5.12.0-dev/include/QtCore/qmap.h:228
&gt; 228                 new (&amp;n-&gt;key) Key(k);
&gt; (gdb) bt
&gt; #0  QMapData&lt;QString, QVariant&gt;::createNode (left=false, parent=0x0, v=..., k=..., this=0x7fff1461f710)
&gt;     at /nix/store/hy0z060pmjwrdrbb0qrii7hnwif8cz1y-qtbase-5.12.0-dev/include/QtCore/qmap.h:228
&gt; #1  QMapNode&lt;QString, QVariant&gt;::copy (this=0x61, d=d@entry=0x7fff1461f710)
&gt;     at /nix/store/hy0z060pmjwrdrbb0qrii7hnwif8cz1y-qtbase-5.12.0-dev/include/QtCore/qmap.h:258
&gt; #2  0x00007ffff78d6150 in QMapNode&lt;QString, QVariant&gt;::copy (this=0x7fff146217d0, d=d@entry=0x7fff1461f710)
&gt;     at /nix/store/hy0z060pmjwrdrbb0qrii7hnwif8cz1y-qtbase-5.12.0-dev/include/QtCore/qmap.h:261
&gt; #3  0x00007ffff78d6150 in QMapNode&lt;QString, QVariant&gt;::copy (this=0x7fff1460f9a0, d=d@entry=0x7fff1461f710)
&gt;     at /nix/store/hy0z060pmjwrdrbb0qrii7hnwif8cz1y-qtbase-5.12.0-dev/include/QtCore/qmap.h:261
&gt; #4  0x00007ffff7c28198 in QMap&lt;QString, QVariant&gt;::detach_helper (this=0x27ae498)
&gt;     at /nix/store/hy0z060pmjwrdrbb0qrii7hnwif8cz1y-qtbase-5.12.0-dev/include/QtCore/qmap.h:1008
&gt; #5  0x00007ffff6e8638d in QMap&lt;QString, QVariant&gt;::detach (this=&lt;optimized out&gt;)
&gt;     at /nix/store/hy0z060pmjwrdrbb0qrii7hnwif8cz1y-qtbase-5.12.0-dev/include/QtCore/qmap.h:364
&gt; #6  QMap&lt;QString, QVariant&gt;::insert (avalue=..., akey=..., this=&lt;optimized out&gt;)
&gt;     at /nix/store/hy0z060pmjwrdrbb0qrii7hnwif8cz1y-qtbase-5.12.0-dev/include/QtCore/qmap.h:706
&gt; #7  Digikam::DImg::setAttribute (this=&lt;optimized out&gt;, key=..., value=...)
&gt;     at /home/timo/tmp/source/core/libs/dimg/dimg_props.cpp:207
&gt; #8  0x00007ffff6f5a812 in Digikam::LoadSaveThread::exifRotate (image=..., filePath=...)
&gt;     at /home/timo/tmp/source/core/libs/threadimageio/fileio/loadsavethread.cpp:336
&gt; #9  0x00007ffff6f42c7f in Digikam::PreviewLoadingTask::execute (this=0x2f20f40)
&gt;     at /home/timo/tmp/source/core/libs/threadimageio/preview/previewtask.cpp:302
&gt; #10 0x00007ffff6f5a55e in Digikam::LoadSaveThread::run (this=0x295c600)
&gt;     at /home/timo/tmp/source/core/libs/threadimageio/fileio/loadsavethread.cpp:133
&gt; #11 0x00007ffff6f7b84e in Digikam::DynamicThread::Private::run (this=0x2b6f480)
&gt;     at /home/timo/tmp/source/core/libs/threads/dynamicthread.cpp:183
&gt; #12 0x00007fffef3137d2 in ?? () from /nix/store/683732s7dq6bxrl267lcadl5lvn6i4nh-qtbase-5.12.0/lib/libQt5Core.so.5
&gt; #13 0x00007fffef30f062 in ?? () from /nix/store/683732s7dq6bxrl267lcadl5lvn6i4nh-qtbase-5.12.0/lib/libQt5Core.so.5
&gt; #14 0x00007ffff64e2ef7 in start_thread () from /nix/store/iykxb0bmfjmi7s53kfg6pjbfpd8jmza6-glibc-2.27/lib/libpthread.so.0
&gt; #15 0x00007fffed6ec22f in clone () from /nix/store/iykxb0bmfjmi7s53kfg6pjbfpd8jmza6-glibc-2.27/lib/libc.so.6
&gt; (gdb)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1873914</commentid>
    <comment_count>159</comment_count>
    <who name="">caulier.gilles</who>
    <bug_when>2019-08-09 09:55:20 +0000</bug_when>
    <thetext>Maik,

Probably not relevant of this crash, but at least this can be fixed easily :

https://www.digikam.org/reports/cppcheck/master/147.html#line-468

Gilles</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1873915</commentid>
    <comment_count>160</comment_count>
    <who name="">caulier.gilles</who>
    <bug_when>2019-08-09 10:05:21 +0000</bug_when>
    <thetext>timokau,

The face detection algorithm will be completely new and based on DNN. This algorithm come from OpenCV library.

It&apos;s the first step to rewrite whole Face detection and recognition engine, all based on DNN.

https://community.kde.org/GSoC/2019/StatusReports/ThanhTrungDinh#Work_report

I recognition is really improved. Here no crash with 20000 items scanned and 2500 faces detected. Only few false positive (less than 10), and algorithm can now detect dog, cat, cut faces, masked faced. The results are really impressive.

Gilles Caulier</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1873918</commentid>
    <comment_count>161</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2019-08-09 10:26:12 +0000</bug_when>
    <thetext>(In reply to caulier.gilles from comment #159)
&gt; Probably not relevant of this crash, but at least this can be fixed easily :
&gt; 
&gt; https://www.digikam.org/reports/cppcheck/master/147.html#line-468

Yes, I had not fixed that yet, because then the merge with the branch of Thanh is no longer possible and it is already fixed there. But I also think that it is not the cause. Strange is just that very few users can ever reproduce it. But I have another idea...

Maik</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1873919</commentid>
    <comment_count>162</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2019-08-09 10:32:29 +0000</bug_when>
    <thetext>Git commit fb025c9ca6c4274d20a3af4571f58094113eb734 by Maik Qualmann.
Committed on 09/08/2019 at 10:31.
Pushed by mqualmann into branch &apos;master&apos;.

just another attempt to fix the crash

M  +2    -2    core/libs/threadimageio/fileio/loadsavetask.cpp

https://invent.kde.org/kde/digikam/commit/fb025c9ca6c4274d20a3af4571f58094113eb734</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1873967</commentid>
    <comment_count>163</comment_count>
    <who name="">timokau</who>
    <bug_when>2019-08-09 12:30:36 +0000</bug_when>
    <thetext>The face tooling updates are exciting! I was aware of the ongoing recognition work, but didn&apos;t know it also covered detection. Lots of interesting areas of improvement here, for example using active learning and semi-supervised clustering to minimize human input. Exciting to see where this goes :)

Unfortunately no luck with fb025c9ca6c4274d20a3af4571f58094113eb734:

&gt; digikam.dimg: &quot;/home/timo/tmp/deletable-pics/Android/Whatsapp/IMG-20131016-WA0002.jpg&quot;  : JPEG file identified
&gt; digikam.dimg: &quot;/home/timo/tmp/deletable-pics/Android/Whatsapp/IMG-20131016-WA0003.jpg&quot;  : JPEG file identified
&gt; digikam.dimg: &quot;/home/timo/tmp/deletable-pics/Android/Whatsapp/IMG-20131016-WA0004.jpg&quot;  : JPEG file identified
&gt; digikam.dimg: &quot;/home/timo/tmp/deletable-pics/Android/Whatsapp/IMG-20131018-WA0001.jpg&quot;  : JPEG file identified
&gt; digikam.metaengine: Exif color-space tag is sRGB. Using default sRGB ICC profile.
&gt; digikam.dimg: &quot;/home/timo/tmp/deletable-pics/Android/Whatsapp/IMG-20131020-WA0000.jpg&quot;  : JPEG file identified
&gt; digikam.general: Cancel Main Thread
&gt; [Thread 0x7fff27fff700 (LWP 7030) exited]
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.dimg: &quot;/home/timo/tmp/deletable-pics/Android/Whatsapp/IMG-20131020-WA0002.jpg&quot;  : JPEG file identified
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.facesengine: detectMultiScale gave ()
&gt; digikam.general: Found 0 faces in &quot;IMG-20131014-WA0000.jpg&quot; QSize(800, 450) QSize(800, 450)
&gt; digikam.general: Removing old entries ()
&gt; digikam.facesengine: detectMultiScale: image size ( 640 , 480 ) searchIncrement 1.1 grouping 3 flags 1 min size ( 22 , 22 )
&gt; 
&gt; Thread 30 &quot;Thread (pooled)&quot; received signal SIGSEGV, Segmentation fault.
&gt; [Switching to Thread 0x7fff2ffff700 (LWP 22236)]
&gt; 0x0000006c00657261 in ?? ()
&gt; (gdb) bt
&gt; #0  0x0000006c00657261 in ?? ()
&gt; #1  0x00007ffff6072945 in Exiv2::ExifKey::clone() const ()
&gt;    from /nix/store/56932a3lcqp48131p0w0ggr1lhxxna3v-exiv2-0.27.1/lib/libexiv2.so.27
&gt; #2  0x00007ffff6024bb2 in Exiv2::Exifdatum::Exifdatum(Exiv2::Exifdatum const&amp;) ()
&gt;    from /nix/store/56932a3lcqp48131p0w0ggr1lhxxna3v-exiv2-0.27.1/lib/libexiv2.so.27
&gt; #3  0x00007ffff6eae6dd in __gnu_cxx::new_allocator&lt;std::_List_node&lt;Exiv2::Exifdatum&gt; &gt;::construct&lt;Exiv2::Exifdatum, Exiv2::Exifdatum
&gt;  const&amp;&gt; (this=&lt;optimized out&gt;, __p=&lt;optimized out&gt;)
&gt;     at /nix/store/wr5dlcw1asw8dwgm4bwjmga8f52m5lfx-gcc-7.4.0/include/c++/7.4.0/ext/new_allocator.h:136
&gt; #4  std::allocator_traits&lt;std::allocator&lt;std::_List_node&lt;Exiv2::Exifdatum&gt; &gt; &gt;::construct&lt;Exiv2::Exifdatum, Exiv2::Exifdatum const&amp;&gt;
&gt;  (__a=..., __p=&lt;optimized out&gt;) at /nix/store/wr5dlcw1asw8dwgm4bwjmga8f52m5lfx-gcc-7.4.0/include/c++/7.4.0/bits/alloc_traits.h:475
&gt; #5  std::__cxx11::list&lt;Exiv2::Exifdatum, std::allocator&lt;Exiv2::Exifdatum&gt; &gt;::_M_create_node&lt;Exiv2::Exifdatum const&amp;&gt; (
&gt;     this=0x7fff2ffeecf0) at /nix/store/wr5dlcw1asw8dwgm4bwjmga8f52m5lfx-gcc-7.4.0/include/c++/7.4.0/bits/stl_list.h:575
&gt; #6  std::__cxx11::list&lt;Exiv2::Exifdatum, std::allocator&lt;Exiv2::Exifdatum&gt; &gt;::_M_insert&lt;Exiv2::Exifdatum const&amp;&gt; (__position=..., 
&gt;     this=0x7fff2ffeecf0) at /nix/store/wr5dlcw1asw8dwgm4bwjmga8f52m5lfx-gcc-7.4.0/include/c++/7.4.0/bits/stl_list.h:1801
&gt; #7  std::__cxx11::list&lt;Exiv2::Exifdatum, std::allocator&lt;Exiv2::Exifdatum&gt; &gt;::emplace_back&lt;Exiv2::Exifdatum const&amp;&gt; (
&gt;     this=0x7fff2ffeecf0) at /nix/store/wr5dlcw1asw8dwgm4bwjmga8f52m5lfx-gcc-7.4.0/include/c++/7.4.0/bits/stl_list.h:1133
&gt; #8  std::__cxx11::list&lt;Exiv2::Exifdatum, std::allocator&lt;Exiv2::Exifdatum&gt; &gt;::_M_initialize_dispatch&lt;std::_List_const_iterator&lt;Exiv2:
&gt; :Exifdatum&gt; &gt; (__last=..., __first=..., this=0x7fff2ffeecf0)
&gt;     at /nix/store/wr5dlcw1asw8dwgm4bwjmga8f52m5lfx-gcc-7.4.0/include/c++/7.4.0/bits/stl_list.h:1730
&gt; #9  std::__cxx11::list&lt;Exiv2::Exifdatum, std::allocator&lt;Exiv2::Exifdatum&gt; &gt;::list (__x=..., this=0x7fff2ffeecf0)
&gt;     at /nix/store/wr5dlcw1asw8dwgm4bwjmga8f52m5lfx-gcc-7.4.0/include/c++/7.4.0/bits/stl_list.h:655
&gt; #10 Exiv2::ExifData::ExifData (this=0x7fff2ffeecf0)
&gt;     at /nix/store/291xr43ngjk60aw7ldshmajbavn5ajn8-exiv2-0.27.1-dev/include/exiv2/exif.hpp:434
&gt; #11 Digikam::MetaEngine::getExifTagData (this=this@entry=0x7fff2ffeedf0, 
&gt;     exifTagName=exifTagName@entry=0x7ffff73790cd &quot;Exif.Image.InterColorProfile&quot;)
&gt;     at /home/timo/tmp/source/core/libs/metadataengine/engine/metaengine_exif.cpp:682
&gt; #12 0x00007ffff6eeb904 in Digikam::DMetadata::getIccProfile (this=this@entry=0x7fff2ffeedf0)
&gt;     at /home/timo/tmp/source/core/libs/metadataengine/dmetadata/dmetadata_exif.cpp:85
&gt; #13 0x00007ffff6d2282f in Digikam::DImgLoader::checkExifWorkingColorSpace (this=this@entry=0x7fff2ffef590)
&gt;     at /home/timo/tmp/source/core/libs/dimg/loaders/dimgloader.cpp:301
&gt; #14 0x00007ffff6d2bfeb in Digikam::JPEGLoader::load (this=this@entry=0x7fff2ffef590, filePath=..., 
&gt;     observer=observer@entry=0x438adc0) at /home/timo/tmp/source/core/libs/dimg/loaders/jpegloader.cpp:637
&gt; #15 0x00007ffff6e7eb37 in Digikam::DImg::load (this=this@entry=0x438afa8, filePath=..., loadFlagsInt=loadFlagsInt@entry=63, 
&gt;     observer=observer@entry=0x438adc0, rawDecodingSettings=...) at /home/timo/tmp/source/core/libs/dimg/dimg_fileio.cpp:126
&gt; #16 0x00007ffff6e7f370 in Digikam::DImg::load (this=this@entry=0x438afa8, filePath=..., observer=observer@entry=0x438adc0, 
&gt;     rawDecodingSettings=...) at /home/timo/tmp/source/core/libs/dimg/dimg_fileio.cpp:63
&gt; #17 0x00007ffff6f419ab in Digikam::PreviewLoadingTask::execute (this=0x438adb0)
&gt;     at /home/timo/tmp/source/core/libs/threadimageio/preview/previewtask.cpp:292
&gt; #18 0x00007ffff6f590ae in Digikam::LoadSaveThread::run (this=0x7fffd0015b30)
&gt;     at /home/timo/tmp/source/core/libs/threadimageio/fileio/loadsavethread.cpp:133
&gt; #19 0x00007ffff6f7a35e in Digikam::DynamicThread::Private::run (this=0x2a940a0)
&gt;     at /home/timo/tmp/source/core/libs/threads/dynamicthread.cpp:183
&gt; #20 0x00007fffef3127d2 in ?? () from /nix/store/683732s7dq6bxrl267lcadl5lvn6i4nh-qtbase-5.12.0/lib/libQt5Core.so.5
&gt; #21 0x00007fffef30e062 in ?? () from /nix/store/683732s7dq6bxrl267lcadl5lvn6i4nh-qtbase-5.12.0/lib/libQt5Core.so.5
&gt; #22 0x00007ffff64e1ef7 in start_thread () from /nix/store/iykxb0bmfjmi7s53kfg6pjbfpd8jmza6-glibc-2.27/lib/libpthread.so.0
&gt; #23 0x00007fffed6eb22f in clone () from /nix/store/iykxb0bmfjmi7s53kfg6pjbfpd8jmza6-glibc-2.27/lib/libc.so.6
&gt; (gdb)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1874014</commentid>
    <comment_count>164</comment_count>
    <who name="">caulier.gilles</who>
    <bug_when>2019-08-09 17:05:11 +0000</bug_when>
    <thetext>Timokau,

If you want to test the current development code for the new face detection/recognition based on DNN, the git branch is here :

https://cgit.kde.org/digikam.git/log/?h=gsoc19-face-recognition

This branch is synchronized with master and is up to date.

You need at least opencv 3.4.6 (i tested with this version) or opencv 4.x

To test, you need to setup a new repository with test images and new database.
after a fresh DK session, and a complete scan for new items to populate the database, go to Face tab from left side bar and run a face detection only process. Do not touch any other option than one to select DNN algorithm in advanced section.

Let&apos;s the process running and wait to see if faces are detected properly, without crash and good result.

The face recognition is not yet finalized. It do not give results here yet.

Gilles Caulier</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1874049</commentid>
    <comment_count>165</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2019-08-09 20:29:56 +0000</bug_when>
    <thetext>Git commit 1c0cc93ec8d4707473eeaf0a15f12c1687bce653 by Maik Qualmann.
Committed on 09/08/2019 at 20:29.
Pushed by mqualmann into branch &apos;master&apos;.

a new interesting attempt to fix the crash

M  +26   -14   core/libs/threadimageio/fileio/loadsavetask.cpp
M  +18   -14   core/libs/threadimageio/preview/previewtask.cpp

https://invent.kde.org/kde/digikam/commit/1c0cc93ec8d4707473eeaf0a15f12c1687bce653</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1874054</commentid>
    <comment_count>166</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2019-08-09 21:45:29 +0000</bug_when>
    <thetext>Git commit b436cb9c0b04da9efff0bda66cf10b71271a1857 by Maik Qualmann.
Committed on 09/08/2019 at 21:44.
Pushed by mqualmann into branch &apos;master&apos;.

and this in addition

M  +1    -1    core/libs/threadimageio/fileio/loadsavetask.cpp

https://invent.kde.org/kde/digikam/commit/b436cb9c0b04da9efff0bda66cf10b71271a1857</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1874310</commentid>
    <comment_count>167</comment_count>
    <who name="">timokau</who>
    <bug_when>2019-08-11 17:23:48 +0000</bug_when>
    <thetext>Unfortunately no luck with either approach :/

With b436cb9c0b04da9efff0bda66cf10b71271a1857:

&gt; digikam.facesengine: Verifying face QRect(552,144 49x49) using cascade 8
&gt; digikam.facesengine: feature QRectF(0.1,0.4 0.8x0.6) QRect(552,144 49x49) QRect(557,164 39x29)
&gt; digikam.facesengine: detectMultiScale: image size ( 39 , 29 ) searchIncrement 1.1 grouping 2 flags 0 min size ( 5 , 5 )
&gt; digikam.facesengine: detectMultiScale gave ()
&gt; digikam.general: Found 0 faces in &quot;IMG-20171231-WA0001.jpg&quot; QSize(1280, 1105) QSize(1280, 1105)
&gt; digikam.facesengine: detectMultiScale: image size ( 800 , 599 ) searchIncrement 1.1 grouping 3 flags 1 min size ( 26 , 26 )
&gt; 
&gt; Thread 30 &quot;Thread (pooled)&quot; received signal SIGSEGV, Segmentation fault.
&gt; [Switching to Thread 0x7fff377fe700 (LWP 25666)]
&gt; 0x00007ffff6e8536b in std::__atomic_base&lt;int&gt;::load (__m=std::memory_order_relaxed, this=&lt;optimized out&gt;)
&gt;     at /nix/store/wr5dlcw1asw8dwgm4bwjmga8f52m5lfx-gcc-7.4.0/include/c++/7.4.0/bits/atomic_base.h:396
&gt; 396             return __atomic_load_n(&amp;_M_i, __m);
&gt; (gdb) bt
&gt; #0  0x00007ffff6e8536b in std::__atomic_base&lt;int&gt;::load (__m=std::memory_order_relaxed, this=&lt;optimized out&gt;) at /nix/store/wr5dlcw1asw8dwgm4bwjmga8f52m5lfx-gcc-7.4.0/include/c++/7.4.0/bits/atomic_base.h:396
&gt; #1  QAtomicOps&lt;int&gt;::load&lt;int&gt; (_q_value=...) at /nix/store/hy0z060pmjwrdrbb0qrii7hnwif8cz1y-qtbase-5.12.0-dev/include/QtCore/qatomic_cxx11.h:227
&gt; #2  QBasicAtomicInteger&lt;int&gt;::load (this=&lt;optimized out&gt;) at /nix/store/hy0z060pmjwrdrbb0qrii7hnwif8cz1y-qtbase-5.12.0-dev/include/QtCore/qbasicatomic.h:103
&gt; #3  QtPrivate::RefCount::isShared (this=&lt;optimized out&gt;) at /nix/store/hy0z060pmjwrdrbb0qrii7hnwif8cz1y-qtbase-5.12.0-dev/include/QtCore/qrefcount.h:101
&gt; #4  QMap&lt;QString, QVariant&gt;::detach (this=&lt;optimized out&gt;) at /nix/store/hy0z060pmjwrdrbb0qrii7hnwif8cz1y-qtbase-5.12.0-dev/include/QtCore/qmap.h:364
&gt; #5  QMap&lt;QString, QVariant&gt;::insert (avalue=..., akey=..., this=&lt;optimized out&gt;) at /nix/store/hy0z060pmjwrdrbb0qrii7hnwif8cz1y-qtbase-5.12.0-dev/include/QtCore/qmap.h:706
&gt; #6  Digikam::DImg::setAttribute (this=0x2b41058, key=..., value=...) at /home/timo/tmp/source/core/libs/dimg/dimg_props.cpp:207
&gt; #7  0x00007ffff6f592d2 in Digikam::LoadSaveThread::exifRotate (image=..., filePath=...) at /home/timo/tmp/source/core/libs/threadimageio/fileio/loadsavethread.cpp:336
&gt; #8  0x00007ffff6f41a61 in Digikam::PreviewLoadingTask::execute (this=0x2b40e60) at /home/timo/tmp/source/core/libs/threadimageio/preview/previewtask.cpp:298
&gt; #9  0x00007ffff6f5901e in Digikam::LoadSaveThread::run (this=0x2abfc40) at /home/timo/tmp/source/core/libs/threadimageio/fileio/loadsavethread.cpp:133
&gt; #10 0x00007ffff6f7a28e in Digikam::DynamicThread::Private::run (this=0x2ceb1d0) at /home/timo/tmp/source/core/libs/threads/dynamicthread.cpp:183
&gt; #11 0x00007fffef3127d2 in ?? () from /nix/store/683732s7dq6bxrl267lcadl5lvn6i4nh-qtbase-5.12.0/lib/libQt5Core.so.5
&gt; #12 0x00007fffef30e062 in ?? () from /nix/store/683732s7dq6bxrl267lcadl5lvn6i4nh-qtbase-5.12.0/lib/libQt5Core.so.5
&gt; #13 0x00007ffff64e1ef7 in start_thread () from /nix/store/iykxb0bmfjmi7s53kfg6pjbfpd8jmza6-glibc-2.27/lib/libpthread.so.0
&gt; #14 0x00007fffed6eb22f in clone () from /nix/store/iykxb0bmfjmi7s53kfg6pjbfpd8jmza6-glibc-2.27/lib/libc.so.6

And with the new detection/recognition code (at 0b749b2623ee3b0b9561bf9a47178e8fbdbe8c55):

&gt; String, &quot;autodetectedFace&quot;), QVariant(int, 281), QVariant(int, 281), QVariant(QString, &quot;tagRegion&quot;))
&gt; digikam.facedb: nnmodel:  &quot;&quot; , nndata  &quot;&quot;
&gt; digikam.facesengine: cv::Exception: OpenCV(3.4.7) /build/source/modules/dnn/src/caffe/caffe_io.cpp:1121: error: (-2:Unspecified error
&gt; ) FAILED: fs.is_open(). Can&apos;t open &quot;&quot; in function &apos;ReadProtoFromTextFile&apos;
&gt; 
&gt; digikam.general: Found 0 faces in &quot;IMG-20170907-WA0003.jpg&quot; QSize(1280, 720) QSize(1280, 720)
&gt; digikam.facedb: nnmodel:  &quot;&quot; , nndata  &quot;&quot;
&gt; digikam.facesengine: cv::Exception: OpenCV(3.4.7) /build/source/modules/dnn/src/caffe/caffe_io.cpp:1121: error: (-2:Unspecified error
&gt; ) FAILED: fs.is_open(). Can&apos;t open &quot;&quot; in function &apos;ReadProtoFromTextFile&apos;
&gt; 
&gt; digikam.general: Found 0 faces in &quot;IMG-20170907-WA0004.jpg&quot; QSize(1032, 581) QSize(1032, 581)
&gt; digikam.dimg: &quot;/home/timo/tmp/deletable-pics/Syncthing-3TB/Oneplus One/Whatsapp/Media/WhatsApp Images/IMG-20170907-WA0006.jpg&quot;  : JPE
&gt; G file identified
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.database: Search result: 36
&gt; digikam.general: Removing old entries ()
&gt; digikam.general: Cancel Main Thread
&gt; [Thread 0x7fff37fff700 (LWP 17296) exited]
&gt; digikam.general: One job is done
&gt; digikam.general: Cancel Main Thread
&gt; digikam.general: Cannot extract preview for &quot;/home/timo/tmp/deletable-pics/Syncthing-3TB/Oneplus One/Whatsapp/Media/WhatsApp Images/I
&gt; MG-20171021-WA0000.jpeg&quot;
&gt; digikam.dimg: &quot;/home/timo/tmp/deletable-pics/Syncthing-3TB/Oneplus One/Whatsapp/Media/WhatsApp Images/IMG-20170907-WA0007.jpg&quot;  : JPE
&gt; G file identified
&gt; 
&gt; Thread 4830 &quot;Thread (pooled)&quot; received signal SIGSEGV, Segmentation fault.
&gt; [Switching to Thread 0x7fff36ffd700 (LWP 16919)]
&gt; 0x00007fffef48e7e0 in operator&lt;(QString const&amp;, QString const&amp;) ()
&gt;    from /nix/store/683732s7dq6bxrl267lcadl5lvn6i4nh-qtbase-5.12.0/lib/libQt5Core.so.5
&gt; (gdb) bt
&gt; #0  0x00007fffef48e7e0 in operator&lt;(QString const&amp;, QString const&amp;) ()
&gt;    from /nix/store/683732s7dq6bxrl267lcadl5lvn6i4nh-qtbase-5.12.0/lib/libQt5Core.so.5
&gt; #1  0x00007ffff6f760f9 in qMapLessThanKey&lt;QString&gt; (key2=..., key1=...)
&gt;     at /nix/store/hy0z060pmjwrdrbb0qrii7hnwif8cz1y-qtbase-5.12.0-dev/include/QtCore/qmap.h:71
&gt; #2  QMap&lt;QString, QVariant&gt;::insert (avalue=..., akey=..., this=&lt;optimized out&gt;)
&gt;     at /nix/store/hy0z060pmjwrdrbb0qrii7hnwif8cz1y-qtbase-5.12.0-dev/include/QtCore/qmap.h:713
&gt; #3  Digikam::DImg::setAttribute (this=&lt;optimized out&gt;, key=..., value=...)
&gt;     at /home/timo/tmp/digikam/core/libs/dimg/dimg_props.cpp:207
&gt; #4  0x00007ffff6e1e211 in Digikam::DImgLoader::uniqueHashV2 (filePath=..., img=img@entry=0x25d4748)
&gt;     at /home/timo/tmp/digikam/core/libs/dimg/loaders/dimgloader.cpp:374
&gt; #5  0x00007ffff6e1e4f7 in Digikam::DImgLoader::createHistoryImageId (filePath=..., image=..., metadata=...)
&gt;     at /home/timo/tmp/digikam/core/libs/dimg/loaders/dimgloader.cpp:286
&gt; #6  0x00007ffff6e1e9e3 in Digikam::DImgLoader::readMetadata (this=0x7fff36fed5a0, filePath=...)
&gt;     at /home/timo/tmp/digikam/core/libs/dimg/loaders/dimgloader.cpp:229
&gt; #7  0x00007ffff6e264f1 in Digikam::JPEGLoader::load (this=this@entry=0x7fff36fed5a0, filePath=..., 
&gt;     observer=observer@entry=0x25d4560) at /home/timo/tmp/digikam/core/libs/dimg/loaders/jpegloader.cpp:92
&gt; #8  0x00007ffff6f6f867 in Digikam::DImg::load (this=this@entry=0x25d4748, filePath=..., loadFlagsInt=loadFlagsInt@entry=63, 
&gt;     observer=observer@entry=0x25d4560, rawDecodingSettings=...) at /home/timo/tmp/digikam/core/libs/dimg/dimg_fileio.cpp:126
&gt; #9  0x00007ffff6f700a0 in Digikam::DImg::load (this=this@entry=0x25d4748, filePath=..., observer=observer@entry=0x25d4560, 
&gt;     rawDecodingSettings=...) at /home/timo/tmp/digikam/core/libs/dimg/dimg_fileio.cpp:63
&gt; #10 0x00007ffff703265e in Digikam::PreviewLoadingTask::execute (this=0x25d4550)
&gt;     at /home/timo/tmp/digikam/core/libs/threadimageio/preview/previewtask.cpp:288
&gt; #11 0x00007ffff7049d5e in Digikam::LoadSaveThread::run (this=0x2b656c0)
&gt;     at /home/timo/tmp/digikam/core/libs/threadimageio/fileio/loadsavethread.cpp:133
&gt; #12 0x00007ffff706afce in Digikam::DynamicThread::Private::run (this=0x2b67ab0)
&gt;     at /home/timo/tmp/digikam/core/libs/threads/dynamicthread.cpp:183
&gt; #13 0x00007fffef40a7d2 in ?? () from /nix/store/683732s7dq6bxrl267lcadl5lvn6i4nh-qtbase-5.12.0/lib/libQt5Core.so.5
&gt; #14 0x00007fffef406062 in ?? () from /nix/store/683732s7dq6bxrl267lcadl5lvn6i4nh-qtbase-5.12.0/lib/libQt5Core.so.5
&gt; #15 0x00007ffff65d9ef7 in start_thread () from /nix/store/iykxb0bmfjmi7s53kfg6pjbfpd8jmza6-glibc-2.27/lib/libpthread.so.0
&gt; #16 0x00007fffed53a22f in clone () from /nix/store/iykxb0bmfjmi7s53kfg6pjbfpd8jmza6-glibc-2.27/lib/libc.so.6
&gt; (gdb)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1874314</commentid>
    <comment_count>168</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2019-08-11 17:44:10 +0000</bug_when>
    <thetext>Which Linux version do you use exactly? I could not determine it in the thread. Since even Gilles with his Intel machine can not reproduce the problem and we should have a lot more feedback on a problem in digiKam, I think the problem is somewhere else. For me, it looks like the loading task is being killed from &quot;outside&quot;...

Maik</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1874332</commentid>
    <comment_count>169</comment_count>
    <who name="">timokau</who>
    <bug_when>2019-08-11 21:19:30 +0000</bug_when>
    <thetext>&gt; Which Linux version do you use exactly? I could not determine it in the thread.

It&apos;s in the first post: NixOS. Or do you mean the actual linux kernel version? That would be 4.19.65.

&gt; For me, it looks like the loading task is being killed from &quot;outside&quot;...

How could that happen? Its a segfault after all, not a reaction to a SIGKILL or something. Also remember that the same issue occurs with the snap, which probably rules out some external factors. Though I agree that a hardware-related failure doesn&apos;t seem much more likely. We do have some people in the CC list, not sure if they&apos;re seeing the same error.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1874445</commentid>
    <comment_count>170</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2019-08-12 17:04:32 +0000</bug_when>
    <thetext>Please post the output of:

cat /proc/sys/vm/overcommit_memory

and:

cat /proc/sys/vm/overcommit_ratio

Maik</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1874467</commentid>
    <comment_count>171</comment_count>
    <who name="">timokau</who>
    <bug_when>2019-08-12 20:52:04 +0000</bug_when>
    <thetext>Overcommit is set to the default setting (&quot;however much the kernel heuristic sees fit&quot;):

$ cat /proc/sys/vm/overcommit_memory
0
$ cat /proc/sys/vm/overcommit_ratio
50

The machine has 8G of ram, though I have reproduced it on my 16G laptop as well.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1874760</commentid>
    <comment_count>172</comment_count>
    <who name="">timokau</who>
    <bug_when>2019-08-14 14:24:25 +0000</bug_when>
    <thetext>I tried out a couple of old NixOS versions, and the oldest one with a working digikam with face detection had digikam 4.12.0. I could reproduce the crash with that version too.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1874959</commentid>
    <comment_count>173</comment_count>
    <who name="">caulier.gilles</who>
    <bug_when>2019-08-15 10:33:31 +0000</bug_when>
    <thetext>Timokau,

I would to know if the Google Summer of Code 2019 branch about face recognition port to OpenCV DNN will solve this issue.

Typically, i currently perform a bug triage in Bugzilla, especially about duplicates files. I discovered that more than 150 files are open about Face management crashes. It&apos;s enormous.

Here i test in-deed the new face detection and recognition code, fully rewritten. 

Even if recognition need more adjustment to improve results, the face detection is fabulous. Compared to previous one, the results are more than expected. The neuronal network with a previous training for faces performed by OpenCV team is just wonderful. It work in all cases, including the critical shot conditions.

I tested with plenty of different collections, all  the detection is very stable. It never crash with or without multi-core support. 

To test you need :

- to checkout the code from development branch :

git clone https://invent.kde.org/kde/digikam.git digikam
cd digikam
git checkout -b gsoc19-face-recognition remotes/origin/gsoc19-face-recognition
./bootstrap.linux
cd build 
make -j4
su
make install/fast

Warning this will overwrite your current digiKam build from git/master branch. There is no risk to re-install master later to go back. only internal source code is touched in this developement branch. There is no difference with installed files compared with git/master.

- i recommend to run this digiKam version in a new account. This will create a fresh database. Import your collection which introduce crash during faces scan.

- Go to People tab from left sidebar. Select Scan for faces only. Scan whole collection (no need to scan tags). In advanced options, don&apos;t forget to select DNN module.

- Start face scan and wait to see if the operation can be completed without crash. Look also the face detection results to see if you have not too much false positives.

Best

Gilles Caulier</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1874964</commentid>
    <comment_count>174</comment_count>
    <who name="">timokau</who>
    <bug_when>2019-08-15 10:46:57 +0000</bug_when>
    <thetext>As I reported previously (https://bugs.kde.org/show_bug.cgi?id=399923#c167), this is still an issue with the new face detection code.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1874975</commentid>
    <comment_count>175</comment_count>
    <who name="">caulier.gilles</who>
    <bug_when>2019-08-15 11:44:42 +0000</bug_when>
    <thetext>Oh, i don&apos;t read well your last comment. It&apos;s interresting, especially this trace :

&gt; String, &quot;autodetectedFace&quot;), QVariant(int, 281), QVariant(int, 281), QVariant(QString, &quot;tagRegion&quot;))
&gt; digikam.facedb: nnmodel:  &quot;&quot; , nndata  &quot;&quot;
&gt; digikam.facesengine: cv::Exception: OpenCV(3.4.7) /build/source/modules/dnn/src/caffe/caffe_io.cpp:1121: error: (-2:Unspecified error
&gt; ) FAILED: fs.is_open(). Can&apos;t open &quot;&quot; in function &apos;ReadProtoFromTextFile&apos;
&gt; 
&gt; digikam.general: Found 0 faces in &quot;IMG-20170907-WA0003.jpg&quot; QSize(1280, 720) QSize(1280, 720)
&gt; digikam.facedb: nnmodel:  &quot;&quot; , nndata  &quot;&quot;
&gt; digikam.facesengine: cv::Exception: OpenCV(3.4.7) /build/source/modules/dnn/src/caffe/caffe_io.cpp:1121: error: (-2:Unspecified error
&gt; ) FAILED: fs.is_open(). Can&apos;t open &quot;&quot; in function &apos;ReadProtoFromTextFile&apos;
&gt; 
&gt; digikam.general: Found 0 faces in &quot;IMG-20170907-WA0004.jpg&quot; QSize(1032, 581) QSize(1032, 581)
&gt; digikam.dimg: &quot;/home/timo/tmp/deletable-pics/Syncthing-3TB/Oneplus One/Whatsapp/Media/WhatsApp Images/IMG-20170907-WA0006.jpg&quot;  : JPE
&gt; G file identified

It&apos;s clear : your OpenCV 3.4.7 is not well build. It miss symbols and generate a C++ exception.

I build myself OpenCV 3.4.7, using OpenCV git repository and tag &quot;3.4.7&quot;. I use a minimal configuration with this shell script :

https://cgit.kde.org/digikam.git/tree/project/scripts/bootstrap.opencv-minimal-linux.sh

Checkout opencv 3.4.7 tag from git repository, copy this shell script on root OpenCV directory, run it and go to build subdir to run make -j4 (as with digiKam source).

Before to install this new minimal OpenCV, uninstall all previous development versions from OpenCV. Do not mix configurations. I already faced this kind of situation, and this make an unusable OpenCV with digiKam. You can let&apos;s OpenCv2 binaries as shared libraries, but all cmake config files, headers, and pkgconfig files must be removed and replaced by new compiled OpenCV version.

Take a care to not use in parallel OpenCv4 files. Some part are binary compatible with OpenCv3 and OpenCv2.

When this minimal OpenCv 3.4.7 is installed, from digiKam face recognition branch, remove build sub-dir, and reconfigure with the bootstrap script. Look while configuration stage is all OpenCv 3.4.7 modules are found properly. 

Compile and install this digiKam. Test again the scan for faces function.

Gilles Caulier

PS : here i test with Mageia6 which only includes OpenCv2. I uninstalled all OPenCv2 devel packages and checkout/compile/install OpenCv 3.4.7 as well.
Mageia6 is installed on a real computer, not a VM. I use a NVIDIA video Card, even if my minimal OpenCv 3.4.7 is compiled without CUDA support. In fact i disabled all video and other system accelerations: it&apos;s not optimum but safe to run.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1875649</commentid>
    <comment_count>176</comment_count>
    <who name="">timokau</who>
    <bug_when>2019-08-18 20:10:02 +0000</bug_when>
    <thetext>How do I then tell digikam to use that opencv build instead of the system version?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1875650</commentid>
    <comment_count>177</comment_count>
    <who name="">caulier.gilles</who>
    <bug_when>2019-08-18 20:32:48 +0000</bug_when>
    <thetext>You have no choice. Uninstall the development package from the system version. You can let&apos;s the binary packages. digiKam will try to find opencv devel files, so if only the compiled version is present, it will work.

I do it under Mageia6 which provide only OpenCV 2 instead OpenCV 3.

Gilles Caulier</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1875652</commentid>
    <comment_count>178</comment_count>
    <who name="">timokau</who>
    <bug_when>2019-08-18 20:51:52 +0000</bug_when>
    <thetext>So does it have to be compiled in a subfolder of the digikam checkout? Or how does digikam find the build result?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1875653</commentid>
    <comment_count>179</comment_count>
    <who name="">caulier.gilles</who>
    <bug_when>2019-08-18 20:54:52 +0000</bug_when>
    <thetext>Checkout OpenCV3 in a dedicated directory, outside digiKam.
Compile and install OpenCV3 in your system.
Bootstrap digiKam, and check if right OpenCV3 is found from your system.

Gilles Caulier</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1876242</commentid>
    <comment_count>180</comment_count>
    <who name="">timokau</who>
    <bug_when>2019-08-21 20:09:47 +0000</bug_when>
    <thetext>It still crashes with opencv 3.4.7 built with your configure script :/

&gt; digikam.general: Removing old entries ()
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.dimg: &quot;/tmp/tmp.Uw8rYQpimd/Pictures/p/iPod/IMG_0905.MOV&quot;  : Try to load with QImage
&gt; digikam.dimg: QImageLoader support only the image mime type
&gt; digikam.general: Cannot extract preview for &quot;/tmp/tmp.Uw8rYQpimd/Pictures/p/iPod/IMG_0905.MOV&quot;
&gt; digikam.dimg: &quot;/tmp/tmp.Uw8rYQpimd/Pictures/p/iPod/IMG_0906.MOV&quot;  : Try to load with QImage
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.dimg: QImageLoader support only the image mime type
&gt; digikam.general: Cannot extract preview for &quot;/tmp/tmp.Uw8rYQpimd/Pictures/p/iPod/IMG_0906.MOV&quot;
&gt; digikam.dimg: &quot;/tmp/tmp.Uw8rYQpimd/Pictures/p/iPod/IMG_0907.MOV&quot;  : Try to load with QImage
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.dimg: QImageLoader support only the image mime type
&gt; digikam.dimg: &quot;/tmp/tmp.Uw8rYQpimd/Pictures/p/iPod/IMG_0908.MOV&quot;  : Try to load with QImage
&gt; digikam.dimg: QImageLoader support only the image mime type
&gt; digikam.general: Found 0 faces in &quot;IMG_0861.JPG&quot; QSize(960, 720) QSize(960, 720)
&gt; digikam.general: Removing old entries ()
&gt; 
&gt; Thread 295 &quot;Thread (pooled)&quot; received signal SIGSEGV, Segmentation fault.
&gt; [Switching to Thread 0x7fff49006700 (LWP 27860)]
&gt; 0x00007ffff7032313 in Digikam::PreviewLoadingTask::execute (this=0x4d309e0)
&gt;     at /tmp/tmp.Uw8rYQpimd/digikam/core/libs/threadimageio/preview/previewtask.cpp:322
&gt; 322                 LoadSaveNotifier* const notifier = l-&gt;loadSaveNotifier();
&gt; (gdb) 
&gt; (gdb) 
&gt; (gdb) bt
&gt; #0  0x00007ffff7032313 in Digikam::PreviewLoadingTask::execute (this=0x4d309e0)
&gt;     at /tmp/tmp.Uw8rYQpimd/digikam/core/libs/threadimageio/preview/previewtask.cpp:322
&gt; #1  0x00007ffff7049d0e in Digikam::LoadSaveThread::run (this=0x512b660)
&gt;     at /tmp/tmp.Uw8rYQpimd/digikam/core/libs/threadimageio/fileio/loadsavethread.cpp:133
&gt; #2  0x00007ffff706af5e in Digikam::DynamicThread::Private::run (this=0x61f9fa0)
&gt;     at /tmp/tmp.Uw8rYQpimd/digikam/core/libs/threads/dynamicthread.cpp:183
&gt; #3  0x00007fffef40a7d2 in ?? () from /nix/store/683732s7dq6bxrl267lcadl5lvn6i4nh-qtbase-5.12.0/lib/libQt5Core.so.5
&gt; #4  0x00007fffef406062 in ?? () from /nix/store/683732s7dq6bxrl267lcadl5lvn6i4nh-qtbase-5.12.0/lib/libQt5Core.so.5
&gt; #5  0x00007ffff65d9ef7 in start_thread () from /nix/store/iykxb0bmfjmi7s53kfg6pjbfpd8jmza6-glibc-2.27/lib/libpthread.so.0
&gt; #6  0x00007fffed72e22f in clone () from /nix/store/iykxb0bmfjmi7s53kfg6pjbfpd8jmza6-glibc-2.27/lib/libc.so.6
&gt; (gdb) 

This was with digikam 820034951db297a2d31ce0b3141786b295a55ce0 (gsoc19-face-recognition).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1876279</commentid>
    <comment_count>181</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2019-08-22 05:58:01 +0000</bug_when>
    <thetext>Git commit 69e0c11b852299c8ed2a47f7e84b34aa2d49d67a by Maik Qualmann.
Committed on 22/08/2019 at 05:57.
Pushed by mqualmann into branch &apos;gsoc19-face-recognition&apos;.

Merge branch &apos;master&apos; into gsoc19-face-recognition


https://invent.kde.org/kde/digikam/commit/69e0c11b852299c8ed2a47f7e84b34aa2d49d67a</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1876280</commentid>
    <comment_count>182</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2019-08-22 06:04:00 +0000</bug_when>
    <thetext>Your last crash is one that can never happen. We do not test the pointer, but it can never be zero. The QList from which the pointer comes is only read or written under QMutex condition. Since I suspect extreme compiler optimizations, I&apos;ve changed some little thing in the head of the gsoc19-face-recognition branch. Please test again...

Maik</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1876431</commentid>
    <comment_count>183</comment_count>
    <who name="">timokau</who>
    <bug_when>2019-08-22 21:17:33 +0000</bug_when>
    <thetext>To quote douglas adams ;)
&gt; The major difference between a thing that might go wrong and a thing that cannot possibly go wrong is that when a thing that cannot possibly go wrong goes wrong it usually turns out to be impossible to get at or repair.

Here&apos;s the run with latest gsoc (8e9fdf3ab6c581152d8c2f9dd8d764fbb3dfff96):

&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.metaengine: Exif color-space tag is sRGB. Using default sRGB ICC profile.
&gt; digikam.dimg: &quot;/tmp/tmp.VjfYQHZygB/Pictures/p/20171222_121952.jpg&quot;  : JPEG file identified
&gt; digikam.metaengine: Exif color-space tag is sRGB. Using default sRGB ICC profile.
&gt; digikam.general: Found 0 faces in &quot;20171222_114024.jpg&quot; QSize(4032, 3024) QSize(4032, 3024)
&gt; digikam.general: Removing old entries ()
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.dimg: &quot;/tmp/tmp.VjfYQHZygB/Pictures/p/20171222_121956.mp4&quot;  : Try to load with QImage
&gt; digikam.dimg: QImageLoader support only the image mime type
&gt; digikam.general: Cannot extract preview for &quot;/tmp/tmp.VjfYQHZygB/Pictures/p/20171222_121956.mp4&quot;
&gt; digikam.dimg: &quot;/tmp/tmp.VjfYQHZygB/Pictures/p/20171222_122009.mp4&quot;  : Try to load with QImage
&gt; digikam.dimg: QImageLoader support only the image mime type
&gt; digikam.general: Cannot extract preview for &quot;/tmp/tmp.VjfYQHZygB/Pictures/p/20171222_122009.mp4&quot;
&gt; digikam.dimg: &quot;/tmp/tmp.VjfYQHZygB/Pictures/p/20171222_122616.mp4&quot;  : Try to load with QImage
&gt; digikam.dimg: QImageLoader support only the image mime type
&gt; digikam.general: Cannot extract preview for &quot;/tmp/tmp.VjfYQHZygB/Pictures/p/20171222_122616.mp4&quot;
&gt; digikam.dimg: &quot;/tmp/tmp.VjfYQHZygB/Pictures/p/20171222_123142.mp4&quot;  : Try to load with QImage
&gt; digikam.dimg: QImageLoader support only the image mime type
&gt; digikam.general: Cannot extract preview for &quot;/tmp/tmp.VjfYQHZygB/Pictures/p/20171222_123142.mp4&quot;
&gt; digikam.dimg: &quot;/tmp/tmp.VjfYQHZygB/Pictures/p/20171222_123152.jpg&quot;  : JPEG file identified
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; Trying to construct an instance of an invalid type, type id: 49213440
&gt; 
&gt; Thread 38 &quot;Thread (pooled)&quot; received signal SIGSEGV, Segmentation fault.
&gt; [Switching to Thread 0x7fff48d63700 (LWP 16659)]
&gt; 0x00007fffef48772a in operator==(QString const&amp;, QString const&amp;) ()
&gt;    from /nix/store/683732s7dq6bxrl267lcadl5lvn6i4nh-qtbase-5.12.0/lib/libQt5Core.so.5
&gt; (gdb) bt
&gt; #0  0x00007fffef48772a in operator==(QString const&amp;, QString const&amp;) ()
&gt;    from /nix/store/683732s7dq6bxrl267lcadl5lvn6i4nh-qtbase-5.12.0/lib/libQt5Core.so.5
&gt; #1  0x00007ffff7044eb5 in Digikam::LoadingDescription::equalsIgnoreReducedVersion (this=&lt;optimized out&gt;, other=...)
&gt;     at /tmp/tmp.VjfYQHZygB/digikam/core/libs/threadimageio/fileio/loadingdescription.cpp:313
&gt; #2  0x00007ffff704fcbb in Digikam::SharedLoadingTask::notifyNewLoadingProcess (this=0x318d560, process=&lt;optimized out&gt;, 
&gt;     description=...) at /tmp/tmp.VjfYQHZygB/digikam/core/libs/threadimageio/fileio/loadsavetask.cpp:429
&gt; #3  0x00007ffff70465f0 in Digikam::LoadingCache::notifyNewLoadingProcess (this=this@entry=0x7fffb0017f70, 
&gt;     process=process@entry=0x320a7c0, description=...)
&gt;     at /tmp/tmp.VjfYQHZygB/digikam/core/libs/threadimageio/fileio/loadingcache.cpp:240
&gt; #4  0x00007ffff702bc77 in Digikam::PreviewLoadingTask::execute (this=0x320a5f0)
&gt;     at /tmp/tmp.VjfYQHZygB/digikam/core/libs/threadimageio/preview/previewtask.cpp:145
&gt; #5  0x00007ffff704361e in Digikam::LoadSaveThread::run (this=0x61bdb80)
&gt;     at /tmp/tmp.VjfYQHZygB/digikam/core/libs/threadimageio/fileio/loadsavethread.cpp:133
&gt; #6  0x00007ffff706488e in Digikam::DynamicThread::Private::run (this=0x37a70a0)
&gt;     at /tmp/tmp.VjfYQHZygB/digikam/core/libs/threads/dynamicthread.cpp:183
&gt; #7  0x00007fffef4037d2 in ?? () from /nix/store/683732s7dq6bxrl267lcadl5lvn6i4nh-qtbase-5.12.0/lib/libQt5Core.so.5
&gt; #8  0x00007fffef3ff062 in ?? () from /nix/store/683732s7dq6bxrl267lcadl5lvn6i4nh-qtbase-5.12.0/lib/libQt5Core.so.5
&gt; #9  0x00007ffff65d2ef7 in start_thread () from /nix/store/iykxb0bmfjmi7s53kfg6pjbfpd8jmza6-glibc-2.27/lib/libpthread.so.0
&gt; #10 0x00007fffed72722f in clone () from /nix/store/iykxb0bmfjmi7s53kfg6pjbfpd8jmza6-glibc-2.27/lib/libc.so.6
&gt; (gdb)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1876470</commentid>
    <comment_count>184</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2019-08-23 04:45:25 +0000</bug_when>
    <thetext>Git commit de9adb9f0051bff5da4a0ffa2e85dbc198e3b33f by Maik Qualmann.
Committed on 23/08/2019 at 04:44.
Pushed by mqualmann into branch &apos;master&apos;.

add dynamic cast

M  +21   -16   core/libs/threadimageio/fileio/loadsavetask.cpp
M  +16   -11   core/libs/threadimageio/preview/previewtask.cpp
M  +8    -8    core/libs/threadimageio/thumb/thumbnailtask.cpp

https://invent.kde.org/kde/digikam/commit/de9adb9f0051bff5da4a0ffa2e85dbc198e3b33f</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1876471</commentid>
    <comment_count>185</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2019-08-23 04:46:50 +0000</bug_when>
    <thetext>Git commit 7948db0711fa81018cf0e6c473d3ea1a59d97388 by Maik Qualmann.
Committed on 23/08/2019 at 04:46.
Pushed by mqualmann into branch &apos;gsoc19-face-recognition&apos;.

Merge branch &apos;master&apos; into gsoc19-face-recognition


https://invent.kde.org/kde/digikam/commit/7948db0711fa81018cf0e6c473d3ea1a59d97388</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1876627</commentid>
    <comment_count>186</comment_count>
    <who name="">timokau</who>
    <bug_when>2019-08-24 11:25:57 +0000</bug_when>
    <thetext>With 7948db0711fa81018cf0e6c473d3ea1a59d97388:

&gt; digikam.metaengine: Exif color-space tag is sRGB. Using default sRGB ICC profile.
&gt; digikam.general: Found 0 faces in &quot;20171222_123227.jpg&quot; QSize(4032, 3024) QSize(4032, 3024)
&gt; digikam.general: Removing old entries ()
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.dimg: &quot;/tmp/tmp.XBJ09aYEaP/Pictures/p/20171222_123618.jpg&quot;  : JPEG file identified
&gt; digikam.metaengine: Exif color-space tag is sRGB. Using default sRGB ICC profile.
&gt; digikam.general: Found 0 faces in &quot;20171222_123231.jpg&quot; QSize(4032, 3024) QSize(4032, 3024)
&gt; digikam.general: Removing old entries ()
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.dimg: &quot;/tmp/tmp.XBJ09aYEaP/Pictures/p/20171222_123651.mp4&quot;  : Try to load with QImage
&gt; digikam.dimg: QImageLoader support only the image mime type
&gt; digikam.general: Cannot extract preview for &quot;/tmp/tmp.XBJ09aYEaP/Pictures/p/20171222_123651.mp4&quot;
&gt; digikam.dimg: &quot;/tmp/tmp.XBJ09aYEaP/Pictures/p/20171222_123708.mp4&quot;  : Try to load with QImage
&gt; digikam.dimg: QImageLoader support only the image mime type
&gt; digikam.general: Cannot extract preview for &quot;/tmp/tmp.XBJ09aYEaP/Pictures/p/20171222_123708.mp4&quot;
&gt; digikam.dimg: &quot;/tmp/tmp.XBJ09aYEaP/Pictures/p/20171222_123714.jpg&quot;  : JPEG file identified
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; 
&gt; Thread 328 &quot;Thread (pooled)&quot; received signal SIGSEGV, Segmentation fault.
&gt; [Switching to Thread 0x7fff177fe700 (LWP 4385)]
&gt; 0x00007fffef48772a in operator==(QString const&amp;, QString const&amp;) ()
&gt;    from /nix/store/683732s7dq6bxrl267lcadl5lvn6i4nh-qtbase-5.12.0/lib/libQt5Core.so.5
&gt; (gdb) bt
&gt; #0  0x00007fffef48772a in operator==(QString const&amp;, QString const&amp;) ()
&gt;    from /nix/store/683732s7dq6bxrl267lcadl5lvn6i4nh-qtbase-5.12.0/lib/libQt5Core.so.5
&gt; #1  0x00007ffff7044a05 in Digikam::LoadingDescription::equalsIgnoreReducedVersion (this=&lt;optimized out&gt;, other=...)
&gt;     at /tmp/tmp.XBJ09aYEaP/digikam/core/libs/threadimageio/fileio/loadingdescription.cpp:313
&gt; #2  0x00007ffff704f80b in Digikam::SharedLoadingTask::notifyNewLoadingProcess (this=0x3e349c0, process=&lt;optimized out&gt;, 
&gt;     description=...) at /tmp/tmp.XBJ09aYEaP/digikam/core/libs/threadimageio/fileio/loadsavetask.cpp:433
&gt; #3  0x00007ffff7046140 in Digikam::LoadingCache::notifyNewLoadingProcess (this=this@entry=0xa80020, 
&gt;     process=process@entry=0x3d13120, description=...)
&gt;     at /tmp/tmp.XBJ09aYEaP/digikam/core/libs/threadimageio/fileio/loadingcache.cpp:240
&gt; #4  0x00007ffff702bac7 in Digikam::PreviewLoadingTask::execute (this=0x3d12f50)
&gt;     at /tmp/tmp.XBJ09aYEaP/digikam/core/libs/threadimageio/preview/previewtask.cpp:145
&gt; #5  0x00007ffff704316e in Digikam::LoadSaveThread::run (this=0x5b23b00)
&gt;     at /tmp/tmp.XBJ09aYEaP/digikam/core/libs/threadimageio/fileio/loadsavethread.cpp:133
&gt; #6  0x00007ffff706440e in Digikam::DynamicThread::Private::run (this=0x26991b0)
&gt;     at /tmp/tmp.XBJ09aYEaP/digikam/core/libs/threads/dynamicthread.cpp:183
&gt; #7  0x00007fffef4037d2 in ?? () from /nix/store/683732s7dq6bxrl267lcadl5lvn6i4nh-qtbase-5.12.0/lib/libQt5Core.so.5
&gt; #8  0x00007fffef3ff062 in ?? () from /nix/store/683732s7dq6bxrl267lcadl5lvn6i4nh-qtbase-5.12.0/lib/libQt5Core.so.5
&gt; #9  0x00007ffff65d2ef7 in start_thread () from /nix/store/iykxb0bmfjmi7s53kfg6pjbfpd8jmza6-glibc-2.27/lib/libpthread.so.0
&gt; #10 0x00007fffed72722f in clone () from /nix/store/iykxb0bmfjmi7s53kfg6pjbfpd8jmza6-glibc-2.27/lib/libc.so.6
&gt; (gdb)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1876632</commentid>
    <comment_count>187</comment_count>
    <who name="">caulier.gilles</who>
    <bug_when>2019-08-24 11:46:22 +0000</bug_when>
    <thetext>This crash from the face-recognition branch is just not understandable , and not reproducible here. I play with this code since few weeks, and it do not crash, including the video file parsing (which are not handled in face workflow).

Gilles Caulier</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1876633</commentid>
    <comment_count>188</comment_count>
    <who name="">caulier.gilles</who>
    <bug_when>2019-08-24 11:47:04 +0000</bug_when>
    <thetext>Can you just parse only albums containing images please ?

Gilles Caulier</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1876638</commentid>
    <comment_count>189</comment_count>
    <who name="">timokau</who>
    <bug_when>2019-08-24 12:34:31 +0000</bug_when>
    <thetext>So you want me to run the face detection only on images, not videos? How would I do that?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1876640</commentid>
    <comment_count>190</comment_count>
    <who name="">caulier.gilles</who>
    <bug_when>2019-08-24 12:37:19 +0000</bug_when>
    <thetext>Very simple. In advanced settings section of face scan dialog, only select right albums to scan, and not the whole albums collection.

Don&apos;t forget also to deselect tag albums, just to be sure.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1876645</commentid>
    <comment_count>191</comment_count>
    <who name="">timokau</who>
    <bug_when>2019-08-24 12:44:07 +0000</bug_when>
    <thetext>It&apos;s not that simple, since videos and pictures are not separated. Since I&apos;m working on a copy of my collection anyway, it would be fine to just delete all videos. Is that possible somehow?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1876647</commentid>
    <comment_count>192</comment_count>
    <who name="">caulier.gilles</who>
    <bug_when>2019-08-24 12:52:08 +0000</bug_when>
    <thetext>Very simple : go to search tool, enter mp4 in text field on top.
Wait the response from the database, all .mp4 files will be listed on icon view. CTRL+A to select all .mp4 from icon-view and SHIFT+DEL to delete definitively all files.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1876727</commentid>
    <comment_count>193</comment_count>
    <who name="">timokau</who>
    <bug_when>2019-08-24 17:56:08 +0000</bug_when>
    <thetext>Ah, I was hoping there was a way to filter for all files with a video mime type (since I have videos in different formats), but I got it done with `find` instead. It came to 95% this time, but still crashed in the end:

&gt; [New Thread 0x7fff3effd700 (LWP 25249)]
&gt; digikam.general: Action Thread run  1  new jobs
&gt; digikam.dimg: &quot;/tmp/tmp.p0vuUbXE4s/Pictures/p/images/new-pics/DCIM/Camera/IMG_20180110_101827.jpg&quot;  : JPEG file identified
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; [New Thread 0x7fff059b5700 (LWP 25250)]
&gt; digikam.database: &quot; ( ( (ImageTagProperties.tagid=? OR ImageTagProperties.tagid IN (SELECT id FROM TagsTree WHERE pid=?)) AND ImageT
&gt; agProperties.property=?  ) OR ( (ImageTagProperties.tagid=? OR ImageTagProperties.tagid IN (SELECT id FROM TagsTree WHERE pid=?)) AN
&gt; D ImageTagProperties.property=?  ) OR ( (ImageTagProperties.tagid=? OR ImageTagProperties.tagid IN (SELECT id FROM TagsTree WHERE pi
&gt; d=?)) AND ImageTagProperties.property=?  ) ) &quot;
&gt; digikam.database: Search query:
&gt;  &quot;SELECT DISTINCT Images.id, Images.name, Images.album,        Albums.albumRoot,        ImageInformation.rating, Images.category,   
&gt;      ImageInformation.format, ImageInformation.creationDate,        Images.modificationDate, Images.fileSize,        ImageInformatio
&gt; n.width,  ImageInformation.height,        ImageTagProperties.value, ImageTagProperties.property, ImageTagProperties.tagid  FROM Imag
&gt; es        INNER JOIN ImageTagProperties ON ImageTagProperties.imageid=Images.id        LEFT JOIN ImageInformation ON Images.id=Image
&gt; Information.imageid        INNER JOIN Albums           ON Albums.id=Images.album WHERE Images.status=1 AND (  ( ( (ImageTagPropertie
&gt; s.tagid=? OR ImageTagProperties.tagid IN (SELECT id FROM TagsTree WHERE pid=?)) AND ImageTagProperties.property=?  ) OR ( (ImageTagP
&gt; roperties.tagid=? OR ImageTagProperties.tagid IN (SELECT id FROM TagsTree WHERE pid=?)) AND ImageTagProperties.property=?  ) OR ( (I
&gt; mageTagProperties.tagid=? OR ImageTagProperties.tagid IN (SELECT id FROM TagsTree WHERE pid=?)) AND ImageTagProperties.property=?  )
&gt;  )  );&quot; 
&gt;  (QVariant(int, 281), QVariant(int, 281), QVariant(QString, &quot;autodetectedPerson&quot;), QVariant(int, 281), QVariant(int, 281), QVariant(
&gt; QString, &quot;autodetectedFace&quot;), QVariant(int, 281), QVariant(int, 281), QVariant(QString, &quot;tagRegion&quot;))
&gt; digikam.database: Search result: 3735
&gt; 
&gt; Thread 45 &quot;Thread (pooled)&quot; received signal SIGSEGV, Segmentation fault.
&gt; [Switching to Thread 0x7fff267fb700 (LWP 16009)]
&gt; 0x00007fffed6d3626 in __memmove_sse2_unaligned_erms () from /nix/store/iykxb0bmfjmi7s53kfg6pjbfpd8jmza6-glibc-2.27/lib/libc.so.6
&gt; (gdb) bt
&gt; #0  0x00007fffed6d3626 in __memmove_sse2_unaligned_erms ()
&gt;    from /nix/store/iykxb0bmfjmi7s53kfg6pjbfpd8jmza6-glibc-2.27/lib/libc.so.6
&gt; #1  0x00007ffff6f65e93 in memcpy (__len=&lt;optimized out&gt;, __src=&lt;optimized out&gt;, __dest=&lt;optimized out&gt;)
&gt;     at /nix/store/bniand9afisrgrsfi7kr093334iv3ibv-glibc-2.27-dev/include/bits/string_fortified.h:34
&gt; #2  Digikam::DImg::detach (this=0x2bab688) at /tmp/tmp.p0vuUbXE4s/digikam/core/libs/dimg/dimg_data.cpp:67
&gt; #3  0x00007ffff702b542 in Digikam::PreviewLoadingTask::execute (this=0x2bab490)
&gt;     at /tmp/tmp.p0vuUbXE4s/digikam/core/libs/threadimageio/preview/previewtask.cpp:381
&gt; #4  0x00007ffff704316e in Digikam::LoadSaveThread::run (this=0x2d091a0)
&gt;     at /tmp/tmp.p0vuUbXE4s/digikam/core/libs/threadimageio/fileio/loadsavethread.cpp:133
&gt; #5  0x00007ffff706440e in Digikam::DynamicThread::Private::run (this=0x2d09b40)
&gt;     at /tmp/tmp.p0vuUbXE4s/digikam/core/libs/threads/dynamicthread.cpp:183
&gt; #6  0x00007fffef4037d2 in ?? () from /nix/store/683732s7dq6bxrl267lcadl5lvn6i4nh-qtbase-5.12.0/lib/libQt5Core.so.5
&gt; #7  0x00007fffef3ff062 in ?? () from /nix/store/683732s7dq6bxrl267lcadl5lvn6i4nh-qtbase-5.12.0/lib/libQt5Core.so.5
&gt; #8  0x00007ffff65d2ef7 in start_thread () from /nix/store/iykxb0bmfjmi7s53kfg6pjbfpd8jmza6-glibc-2.27/lib/libpthread.so.0
&gt; #9  0x00007fffed72722f in clone () from /nix/store/iykxb0bmfjmi7s53kfg6pjbfpd8jmza6-glibc-2.27/lib/libc.so.6
&gt; (gdb)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1876807</commentid>
    <comment_count>194</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2019-08-25 08:00:13 +0000</bug_when>
    <thetext>Git commit 264482ec662a28db39d7a0237ce6d1d2474ba585 by Maik Qualmann.
Committed on 25/08/2019 at 07:59.
Pushed by mqualmann into branch &apos;master&apos;.

disable the communication between threads for a test

M  +4    -4    core/libs/threadimageio/preview/previewtask.cpp

https://invent.kde.org/kde/digikam/commit/264482ec662a28db39d7a0237ce6d1d2474ba585</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1876808</commentid>
    <comment_count>195</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2019-08-25 08:01:50 +0000</bug_when>
    <thetext>Git commit 04179402304ee8d9d813d5761dabf3ea8c769048 by Maik Qualmann.
Committed on 25/08/2019 at 08:01.
Pushed by mqualmann into branch &apos;gsoc19-face-recognition&apos;.

Merge branch &apos;master&apos; into gsoc19-face-recognition


https://invent.kde.org/kde/digikam/commit/04179402304ee8d9d813d5761dabf3ea8c769048</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1880139</commentid>
    <comment_count>196</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2019-09-15 08:13:25 +0000</bug_when>
    <thetext>*** Bug 379470 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1882406</commentid>
    <comment_count>197</comment_count>
    <who name="">timokau</who>
    <bug_when>2019-09-26 19:15:11 +0000</bug_when>
    <thetext>Sorry for the delay. The test is still running.

One thing I can say for sure is that with 04179402304ee8d9d813d5761dabf3ea8c769048 the performance has degraded a lot. It takes up to 10G of ram at times (4G on average) and after over 10h of running I&apos;m now at 17%. Is that to be expected?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1886586</commentid>
    <comment_count>198</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2019-10-19 16:29:33 +0000</bug_when>
    <thetext>Git commit 27f663c1155498c03c174ce93d7c94e69d77489a by Maik Qualmann.
Committed on 19/10/2019 at 16:28.
Pushed by mqualmann into branch &apos;master&apos;.

review loading tasks
Related: bug 406019

M  +42   -37   core/libs/threadimageio/fileio/loadsavetask.cpp
M  +49   -46   core/libs/threadimageio/preview/previewtask.cpp
M  +1    -1    core/libs/threadimageio/thumb/thumbnailcreator_engine.cpp
M  +41   -40   core/libs/threadimageio/thumb/thumbnailtask.cpp

https://invent.kde.org/kde/digikam/commit/27f663c1155498c03c174ce93d7c94e69d77489a</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1886906</commentid>
    <comment_count>199</comment_count>
    <who name="">timokau</who>
    <bug_when>2019-10-21 09:54:53 +0000</bug_when>
    <thetext>With 27f663c1155498c03c174ce93d7c94e69d77489a the scan finishes in just a few seconds, seemingly doing nothing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1886910</commentid>
    <comment_count>200</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2019-10-21 10:30:33 +0000</bug_when>
    <thetext>Presumably it&apos;s because you tested the developer branch with the new DNN face recognition. Check the facial recognition settings and use a new recognition.db.

Maik</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1887025</commentid>
    <comment_count>201</comment_count>
    <who name="">timokau</who>
    <bug_when>2019-10-21 22:17:12 +0000</bug_when>
    <thetext>I set $HOME to a tmpdir for each test to avoid carrying over configuration and I deleted all databases in the picture dir. Is there anything else that could cause this?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1887405</commentid>
    <comment_count>202</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2019-10-24 06:03:53 +0000</bug_when>
    <thetext>In principle, it should be a clean startup configuration. It is difficult to say why the images are not processed. Maybe it helps to post the console log.

Maik</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1887624</commentid>
    <comment_count>203</comment_count>
    <who name="">timokau</who>
    <bug_when>2019-10-24 22:00:02 +0000</bug_when>
    <thetext>I doesn&apos;t look very helpful to me, but here&apos;s the full log of the scan (completed in 7 seconds): http://sprunge.us/fVfY1j</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1887652</commentid>
    <comment_count>204</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2019-10-25 05:51:26 +0000</bug_when>
    <thetext>OK, JPEG is an unknown format. Now the log would be good from the beginning. With digiKam-6.4.0, the image loaders will now also be plugins. These plugins are probably not found in your installation. The search is done in the Qt system plugin path. But there is the possibility to set an env variable to the plugin path.

export DK_PLUGIN_PATH=path_to_plugin_dir

Maik</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1888294</commentid>
    <comment_count>205</comment_count>
    <who name="">timokau</who>
    <bug_when>2019-10-28 16:46:44 +0000</bug_when>
    <thetext>Okay, setting that environment variable appropriately fixed that issue. So here&apos;s the latest crash (with 27f663c1155498c03c174ce93d7c94e69d77489a):


&gt; digikam.facesengine: detectMultiScale: image size ( 52 , 52 ) searchIncrement 1.1 grouping 2 flags 0 min size ( 9 , 9 )
&gt; digikam.facesengine: detectMultiScale gave ()
&gt; digikam.facesengine: Verifying face QRect(262,470 86x86) using cascade 7
&gt; digikam.facesengine: feature QRectF(0.2,0.25 0.6x0.6) QRect(262,470 86x86) QRect(279,492 52x52)
&gt; digikam.facesengine: detectMultiScale: image size ( 52 , 52 ) searchIncrement 1.1 grouping 2 flags 0 min size ( 9 , 9 )
&gt; digikam.facesengine: detectMultiScale gave ()
&gt; digikam.facesengine: Verifying face QRect(262,470 86x86) using cascade 8
&gt; digikam.facesengine: feature QRectF(0.1,0.4 0.8x0.6) QRect(262,470 86x86) QRect(271,504 69x52)
&gt; digikam.facesengine: detectMultiScale: image size ( 69 , 52 ) searchIncrement 1.1 grouping 2 flags 0 min size ( 9 , 9 )
&gt; digikam.facesengine: detectMultiScale gave ()
&gt; digikam.general: Found 0 faces in &quot;some_file_.JPG&quot; QSize(3264, 2448) QSize(3264, 2448)
&gt; digikam.general: Removing old entries ()
&gt; digikam.metaengine: Exif color-space tag is sRGB. Using default sRGB ICC profile.
&gt; digikam.facesengine: detectMultiScale: image size ( 800 , 600 ) searchIncrement 1.1 grouping 3 flags 1 min size ( 26 , 26 )
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.general: Try to get preview from &quot;some_file_.JPG&quot;
&gt; digikam.general: Preview quality:  1
&gt; digikam.dimg: &quot;some_file_.JPG&quot; : &quot;JPEG&quot; file identified
&gt; digikam.metaengine: Exif color-space tag is sRGB. Using default sRGB ICC profile.
&gt; digikam.facesengine: detectMultiScale gave ()
&gt; digikam.general: Found 0 faces in &quot;some_file_.JPG&quot; QSize(3264, 2448) QSize(3264, 2448)
&gt; digikam.general: Removing old entries ()
&gt; digikam.facesengine: detectMultiScale: image size ( 800 , 600 ) searchIncrement 1.1 grouping 3 flags 1 min size ( 26 , 26 )
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.general: Try to get preview from &quot;some_file_.JPG&quot;
&gt; digikam.general: Preview quality:  1
&gt; digikam.dimg: &quot;some_file_.JPG&quot; : &quot;JPEG&quot; file identified
&gt; digikam.metaengine: Exif color-space tag is sRGB. Using default sRGB ICC profile.
&gt; 
&gt; Thread 3275 &quot;Thread (pooled)&quot; received signal SIGSEGV, Segmentation fault.
&gt; [Switching to Thread 0x7fff38ff9700 (LWP 17945)]
&gt; QMapNode&lt;QString, QVariant&gt;::copy (this=0x7ffff3b807b8 &lt;vtable for Exiv2::Exifdatum+16&gt;, d=d@entry=0x7ffef04259d0)
&gt;     at /nix/store/hy0z060pmjwrdrbb0qrii7hnwif8cz1y-qtbase-5.12.0-dev/include/QtCore/qmap.h:258
&gt; 258         QMapNode&lt;Key, T&gt; *n = d-&gt;createNode(key, value);
&gt; (gdb) bt
&gt; #0  QMapNode&lt;QString, QVariant&gt;::copy (this=0x7ffff3b807b8 &lt;vtable for Exiv2::Exifdatum+16&gt;, d=d@entry=0x7ffef04259d0)
&gt;     at /nix/store/hy0z060pmjwrdrbb0qrii7hnwif8cz1y-qtbase-5.12.0-dev/include/QtCore/qmap.h:258
&gt; #1  0x00007ffff7887758 in QMap&lt;QString, QVariant&gt;::detach_helper (this=0x341f0b8)
&gt;     at /nix/store/hy0z060pmjwrdrbb0qrii7hnwif8cz1y-qtbase-5.12.0-dev/include/QtCore/qmap.h:1008
&gt; #2  0x00007ffff78a8ead in QMap&lt;QString, QVariant&gt;::detach (this=&lt;optimized out&gt;)
&gt;     at /nix/store/hy0z060pmjwrdrbb0qrii7hnwif8cz1y-qtbase-5.12.0-dev/include/QtCore/qmap.h:364
&gt; #3  QMap&lt;QString, QVariant&gt;::insert (avalue=..., akey=..., this=&lt;optimized out&gt;)
&gt;     at /nix/store/hy0z060pmjwrdrbb0qrii7hnwif8cz1y-qtbase-5.12.0-dev/include/QtCore/qmap.h:706
&gt; #4  Digikam::DImg::setAttribute (this=&lt;optimized out&gt;, key=..., value=...)
&gt;     at some_file_:207
&gt; #5  0x00007ffff797c1c2 in Digikam::LoadSaveThread::exifRotate (image=..., filePath=...)
&gt;     at some_file_:336
&gt; #6  0x00007ffff7965e4c in Digikam::PreviewLoadingTask::execute (this=0x2702bf0)
&gt;     at some_file_:296
&gt; #7  0x00007ffff797bbbe in Digikam::LoadSaveThread::run (this=0x7fffd80123e0)
&gt;     at some_file_:133
&gt; #8  0x00007ffff799c54e in Digikam::DynamicThread::Private::run (this=0x1aaef60)
&gt;     at some_file_:183
&gt; #9  0x00007ffff4a357d2 in ?? () from /nix/store/683732s7dq6bxrl267lcadl5lvn6i4nh-qtbase-5.12.0/lib/libQt5Core.so.5
&gt; #10 0x00007ffff4a31062 in ?? () from /nix/store/683732s7dq6bxrl267lcadl5lvn6i4nh-qtbase-5.12.0/lib/libQt5Core.so.5
&gt; #11 0x00007ffff43fcef7 in start_thread () from /nix/store/iykxb0bmfjmi7s53kfg6pjbfpd8jmza6-glibc-2.27/lib/libpthread.so.0
&gt; #12 0x00007ffff433222f in clone () from /nix/store/iykxb0bmfjmi7s53kfg6pjbfpd8jmza6-glibc-2.27/lib/libc.so.6
&gt; (gdb)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1888304</commentid>
    <comment_count>206</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2019-10-28 17:33:38 +0000</bug_when>
    <thetext>Git commit 6a77ab5528a85bdf1bb0d5f30bb70f928d99c7b7 by Maik Qualmann.
Committed on 28/10/2019 at 17:32.
Pushed by mqualmann into branch &apos;master&apos;.

move these two static functions for a test in PreviewLoadingTask

M  +26   -2    core/libs/threadimageio/preview/previewtask.cpp
M  +3    -0    core/libs/threadimageio/preview/previewtask.h

https://invent.kde.org/kde/digikam/commit/6a77ab5528a85bdf1bb0d5f30bb70f928d99c7b7</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1888679</commentid>
    <comment_count>207</comment_count>
    <who name="">timokau</who>
    <bug_when>2019-10-29 22:19:20 +0000</bug_when>
    <thetext>One full scan actually went through, but on the second try:

&gt; digikam.general: Found 2 faces in &quot;2012-08-31 18.24.29.jpg&quot; QSize(640, 480) QSize(640, 480)
&gt; digikam.general: Removing old entries (FaceTagsIface(1, image 5429, tag 281, regionQRect(509,142 48x48), FaceTagsIface(1, image 5429,
&gt;  tag 281, regionQRect(300,22 60x60))
&gt; digikam.facesengine: detectMultiScale: image size ( 480 , 640 ) searchIncrement 1.1 grouping 3 flags 1 min size ( 22 , 22 )
&gt; digikam.facesengine: detectMultiScale gave (QRect(138,268 178x178))
&gt; digikam.facesengine: Verifying face QRect(138,268 178x178) using cascade 0
&gt; digikam.facesengine: detectMultiScale: image size ( 258 , 258 ) searchIncrement 1.1 grouping 3 flags 0 min size ( 107 , 107 )
&gt; digikam.facesengine: detectMultiScale gave (QRect(26,33 196x196))
&gt; digikam.facesengine: Verifying face QRect(138,268 178x178) using cascade 1
&gt; digikam.facesengine: detectMultiScale: image size ( 258 , 258 ) searchIncrement 1.1 grouping 3 flags 0 min size ( 107 , 107 )
&gt; digikam.facesengine: detectMultiScale gave (QRect(26,37 196x196))
&gt; digikam.facesengine: Verifying face QRect(138,268 178x178) using cascade 2
&gt; digikam.facesengine: Verifying face QRect(138,268 178x178) using cascade 3
&gt; digikam.facesengine: detectMultiScale: image size ( 258 , 258 ) searchIncrement 1.1 grouping 3 flags 0 min size ( 107 , 107 )
&gt; digikam.facesengine: detectMultiScale gave ()
&gt; digikam.facesengine: Verifying face QRect(138,268 178x178) using cascade 4
&gt; digikam.facesengine: detectMultiScale: image size ( 258 , 258 ) searchIncrement 1.1 grouping 3 flags 0 min size ( 107 , 107 )
&gt; digikam.facesengine: detectMultiScale gave ()
&gt; digikam.facesengine: Verifying face QRect(138,268 178x178) using cascade 5
&gt; digikam.facesengine: feature QRectF(0,0 0.6x0.6) QRect(138,268 178x178) QRect(138,268 107x107)
&gt; digikam.facesengine: detectMultiScale: image size ( 107 , 107 ) searchIncrement 1.1 grouping 2 flags 0 min size ( 18 , 18 )
&gt; digikam.facesengine: detectMultiScale gave (QRect(26,51 59x39), QRect(4,60 39x26))
&gt; digikam.facesengine: Verifying face QRect(138,268 178x178) using cascade 6
&gt; digikam.facesengine: feature QRectF(0.4,0 0.6x0.6) QRect(138,268 178x178) QRect(209,268 107x107)
&gt; digikam.facesengine: detectMultiScale: image size ( 107 , 107 ) searchIncrement 1.1 grouping 2 flags 0 min size ( 18 , 18 )
&gt; digikam.facesengine: detectMultiScale gave (QRect(26,58 40x27))
&gt; digikam.facesengine: Verifying face QRect(138,268 178x178) using cascade 7
&gt; digikam.facesengine: feature QRectF(0.2,0.25 0.6x0.6) QRect(138,268 178x178) QRect(174,313 107x107)
&gt; digikam.facesengine: detectMultiScale: image size ( 107 , 107 ) searchIncrement 1.1 grouping 2 flags 0 min size ( 18 , 18 )
&gt; digikam.facesengine: detectMultiScale gave (QRect(33,46 51x42))
&gt; digikam.facesengine: Verifying face QRect(138,268 178x178) using cascade 8
&gt; digikam.facesengine: feature QRectF(0.1,0.4 0.8x0.6) QRect(138,268 178x178) QRect(156,339 142x107)
&gt; digikam.facesengine: detectMultiScale: image size ( 142 , 107 ) searchIncrement 1.1 grouping 2 flags 0 min size ( 18 , 18 )
&gt; digikam.facesengine: detectMultiScale gave (QRect(30,19 33x20), QRect(50,36 51x30), QRect(31,62 67x40))
&gt; digikam.general: Found 1 faces in &quot;2012-09-01 19.43.55.jpg&quot; QSize(480, 640) QSize(480, 640)
&gt; digikam.facesengine: detectMultiScale: image size ( 480 , 640 ) searchIncrement 1.1 grouping 3 flags 1 min size ( 22 , 22 )
&gt; digikam.general: Removing old entries (FaceTagsIface(1, image 5430, tag 281, regionQRect(138,268 178x178))
&gt; digikam.facesengine: detectMultiScale gave ()
&gt; digikam.general: Found 0 faces in &quot;2012-09-01 21.24.15.jpg&quot; QSize(480, 640) QSize(480, 640)
&gt; digikam.general: Removing old entries ()
&gt; digikam.facesengine: detectMultiScale: image size ( 640 , 480 ) searchIncrement 1.1 grouping 3 flags 1 min size ( 22 , 22 )
&gt; digikam.facesengine: detectMultiScale gave ()
&gt; digikam.general: Found 0 faces in &quot;2012-09-02 19.48.21.jpg&quot; QSize(640, 480) QSize(640, 480)
&gt; digikam.general: Removing old entries ()
&gt; digikam.facesengine: detectMultiScale: image size ( 480 , 640 ) searchIncrement 1.1 grouping 3 flags 1 min size ( 22 , 22 )
&gt; 
&gt; Thread 1107 &quot;Thread (pooled)&quot; received signal SIGSEGV, Segmentation fault.
&gt; [Switching to Thread 0x7fff4cffa700 (LWP 14912)]
&gt; 0xffffffffffffffff in ?? ()
&gt; (gdb) bt
&gt; #0  0xffffffffffffffff in ?? ()
&gt; #1  0x00007ffff7987ffd in Digikam::LoadingTask::progressInfo (this=0x3397410, img=&lt;optimized out&gt;, progress=0.200000003)
&gt;     at /tmp/tmp.tagPkiKadL/digikam/core/libs/threadimageio/fileio/loadsavetask.cpp:65
&gt; #2  0x00007fffb2369a40 in DigikamJPEGDImgPlugin::DImgJPEGLoader::load (this=0x7fff240a6f50, filePath=..., observer=0x3397420)
&gt;     at /tmp/tmp.tagPkiKadL/digikam/core/dplugins/dimg/jpeg/dimgjpegloader_load.cpp:434
&gt; #3  0x00007ffff78a18bc in Digikam::DImg::load (this=this@entry=0x33975f8, filePath=..., loadFlagsInt=loadFlagsInt@entry=63,
&gt;     observer=observer@entry=0x3397420, rawDecodingSettings=...) at /tmp/tmp.tagPkiKadL/digikam/core/libs/dimg/dimg_fileio.cpp:138
&gt; #4  0x00007ffff78a2b50 in Digikam::DImg::load (this=this@entry=0x33975f8, filePath=..., observer=observer@entry=0x3397420,
&gt;     rawDecodingSettings=...) at /tmp/tmp.tagPkiKadL/digikam/core/libs/dimg/dimg_fileio.cpp:63
&gt; #5  0x00007ffff796602a in Digikam::PreviewLoadingTask::execute (this=0x3397410)
&gt;     at /tmp/tmp.tagPkiKadL/digikam/core/libs/threadimageio/preview/previewtask.cpp:286
&gt; #6  0x00007ffff797c2be in Digikam::LoadSaveThread::run (this=0x49d95d0)
&gt;     at /tmp/tmp.tagPkiKadL/digikam/core/libs/threadimageio/fileio/loadsavethread.cpp:133
&gt; #7  0x00007ffff799cc4e in Digikam::DynamicThread::Private::run (this=0x355b600)
&gt;     at /tmp/tmp.tagPkiKadL/digikam/core/libs/threads/dynamicthread.cpp:183
&gt; #8  0x00007ffff4a337d2 in ?? () from /nix/store/683732s7dq6bxrl267lcadl5lvn6i4nh-qtbase-5.12.0/lib/libQt5Core.so.5
&gt; #9  0x00007ffff4a2f062 in ?? () from /nix/store/683732s7dq6bxrl267lcadl5lvn6i4nh-qtbase-5.12.0/lib/libQt5Core.so.5
&gt; #10 0x00007ffff43faef7 in start_thread () from /nix/store/iykxb0bmfjmi7s53kfg6pjbfpd8jmza6-glibc-2.27/lib/libpthread.so.0
&gt; #11 0x00007ffff433022f in clone () from /nix/store/iykxb0bmfjmi7s53kfg6pjbfpd8jmza6-glibc-2.27/lib/libc.so.6
&gt; (gdb)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1888715</commentid>
    <comment_count>208</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2019-10-30 08:00:03 +0000</bug_when>
    <thetext>Ok, here is the crash that should never occur, we are in the wrong overriden function. The crash in the static function is already strange. Although static functions with threads are considered critical, no problems should arise with modern compilers. Here I will try one more experiment with DImg as a pointer. How do you compile digiKam? Do you use additional compiler options?

Maik</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1888722</commentid>
    <comment_count>209</comment_count>
    <who name="">timokau</who>
    <bug_when>2019-10-30 08:59:16 +0000</bug_when>
    <thetext>My reproduction script is as follows:

https://gist.github.com/timokau/a50d1033bce78f56804406bb8585b607

The first couple of lines are to set up an clean environment in a tmpdir for the build. The `nix-shell` line creates a shell with all the dependencies needed for the build. The actual compilation is very standard, I juts pass the prefix and the build type. `wrapQtApp` sets up the appropriate env vars so that digikam can find QT (unfortunately QT and nixos is a bit of an annoying combination).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1888728</commentid>
    <comment_count>210</comment_count>
    <who name="">caulier.gilles</who>
    <bug_when>2019-10-30 09:21:40 +0000</bug_when>
    <thetext>Git commit a3614106b068d39ed820af7bc06f3036e8799d60 by Gilles Caulier.
Committed on 30/10/2019 at 09:20.
Pushed by cgilles into branch &apos;master&apos;.

fix out of bound index reported by cppcheck

M  +5    -2    core/libs/facesengine/facedb/facedb.cpp

https://invent.kde.org/kde/digikam/commit/a3614106b068d39ed820af7bc06f3036e8799d60</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1888732</commentid>
    <comment_count>211</comment_count>
    <who name="">caulier.gilles</who>
    <bug_when>2019-10-30 09:49:37 +0000</bug_when>
    <thetext>Git commit dbcaeafec2ef2627dbf61095b94d7385ec9107f3 by Gilles Caulier.
Committed on 30/10/2019 at 09:47.
Pushed by cgilles into branch &apos;master&apos;.

Cppcheck is right here : we have 2 decalration of i shadow variables. With recent compiler, this must be fine, but with older?

M  +11   -7    core/utilities/facemanagement/faceutils.cpp
M  +9    -7    core/utilities/facemanagement/faceutils.h

https://invent.kde.org/kde/digikam/commit/dbcaeafec2ef2627dbf61095b94d7385ec9107f3</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1888738</commentid>
    <comment_count>212</comment_count>
    <who name="">caulier.gilles</who>
    <bug_when>2019-10-30 09:58:15 +0000</bug_when>
    <thetext>Git commit 707891ca729fa69c1cbcad6c133f0c5585773747 by Gilles Caulier.
Committed on 30/10/2019 at 09:56.
Pushed by cgilles into branch &apos;master&apos;.

Cppcheck is right here : we have 2 declarations of &quot;send&quot; shadow outter function. With recent compiler, this must be fine, but with older?

M  +14   -14   core/utilities/facemanagement/scanstatefilter.cpp
M  +2    -2    core/utilities/facemanagement/scanstatefilter.h

https://invent.kde.org/kde/digikam/commit/707891ca729fa69c1cbcad6c133f0c5585773747</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1888841</commentid>
    <comment_count>213</comment_count>
    <who name="">timokau</who>
    <bug_when>2019-10-30 17:58:20 +0000</bug_when>
    <thetext>With 707891ca729fa69c1cbcad6c133f0c5585773747:

&gt; digikam.metaengine: Exif color-space tag is sRGB. Using default sRGB ICC profile.
&gt; digikam.general: Try to get preview from &quot;some_image.JPG&quot;
&gt; digikam.general: Preview quality:  1
&gt; digikam.dimg: &quot;some_image.JPG&quot; : &quot;JPEG&quot; file identified
&gt; digikam.metaengine: Exif color-space tag is sRGB. Using default sRGB ICC profile.
&gt; digikam.general: Try to get preview from &quot;some_image.JPG&quot;
&gt; digikam.general: Preview quality:  1
&gt; digikam.dimg: &quot;some_image.JPG&quot; : &quot;JPEG&quot; file identified
&gt; digikam.metaengine: Exif color-space tag is sRGB. Using default sRGB ICC profile.
&gt; digikam.general: Try to get preview from &quot;some_image.JPG&quot;
&gt; digikam.general: Preview quality:  1
&gt; digikam.dimg: &quot;some_image.JPG&quot; : &quot;JPEG&quot; file identified
&gt; digikam.facesengine: detectMultiScale gave ()
&gt; digikam.general: Found 0 faces in &quot;some_image.JPG&quot; QSize(1152, 1728) QSize(1152, 1728)
&gt; digikam.general: Removing old entries ()
&gt; digikam.metaengine: Exif color-space tag is sRGB. Using default sRGB ICC profile.
&gt; digikam.general: Cancel Main Thread
&gt; [Thread 0x7fff209b3700 (LWP 10573) exited]
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.general: Try to get preview from &quot;some_image.JPG&quot;
&gt; digikam.general: Preview quality:  1
&gt; digikam.dimg: &quot;some_image.JPG&quot; : &quot;JPEG&quot; file identified
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.general: Try to get preview from &quot;some_image.JPG&quot;
&gt; digikam.general: Preview quality:  1
&gt; digikam.dimg: &quot;some_image.JPG&quot; : &quot;JPEG&quot; file identified
&gt; digikam.facesengine: detectMultiScale: image size ( 533 , 800 ) searchIncrement 1.1 grouping 3 flags 1 min size ( 26 , 26 )
&gt; digikam.metaengine: Exif color-space tag is sRGB. Using default sRGB ICC profile.
&gt; 
&gt; Thread 67 &quot;Thread (pooled)&quot; received signal SIGSEGV, Segmentation fault.
&gt; [Switching to Thread 0x7fff237fe700 (LWP 19814)]
&gt; 0x00007ffff78ce30e in QSharedDataPointer&lt;Digikam::MetaEngineData::Private&gt;::operator= (o=..., this=0x40e7190)
&gt;     at /nix/store/hy0z060pmjwrdrbb0qrii7hnwif8cz1y-qtbase-5.12.0-dev/include/QtCore/qshareddata.h:99
&gt; 99                  if (old &amp;&amp; !old-&gt;ref.deref())
&gt; (gdb) bt
&gt; #0  0x00007ffff78ce30e in QSharedDataPointer&lt;Digikam::MetaEngineData::Private&gt;::operator= (o=..., this=0x40e7190) at /nix/store/hy0z060pmjwrdrbb0qrii7hnwif8cz1y-qtbase-5.12.0-dev/include/QtCore/qshareddata.h:99
&gt; #1  Digikam::MetaEngineData::operator= (this=0x40e7190, other=...) at /tmp/tmp.inM9rwW9gU/digikam/core/libs/metadataengine/engine/metaengine_data.cpp:52
&gt; #2  0x00007ffff78a5a1c in Digikam::DImg::setMetadata (this=this@entry=0x304b8e8, data=...) at /tmp/tmp.inM9rwW9gU/digikam/core/libs/dimg/dimg_props.cpp:172
&gt; #3  0x00007ffff775bf73 in Digikam::DImgLoader::readMetadata (this=0x4dee7c0, filePath=...) at /tmp/tmp.inM9rwW9gU/digikam/core/libs/dimg/loaders/dimgloader.cpp:224
&gt; #4  0x00007fffb236843c in DigikamJPEGDImgPlugin::DImgJPEGLoader::load (this=0x4dee7c0, filePath=..., observer=0x304b710) at /tmp/tmp.inM9rwW9gU/digikam/core/dplugins/dimg/jpeg/dimgjpegloader_load.cpp:56
&gt; #5  0x00007ffff78a080c in Digikam::DImg::load (this=this@entry=0x304b8e8, filePath=..., loadFlagsInt=loadFlagsInt@entry=63, observer=observer@entry=0x304b710, rawDecodingSettings=...) at /tmp/tmp.inM9rwW9gU/digikam/core/libs/dimg/dimg_fileio.cpp:138
&gt; #6  0x00007ffff78a1aa0 in Digikam::DImg::load (this=this@entry=0x304b8e8, filePath=..., observer=observer@entry=0x304b710, rawDecodingSettings=...) at /tmp/tmp.inM9rwW9gU/digikam/core/libs/dimg/dimg_fileio.cpp:63
&gt; #7  0x00007ffff7964d7a in Digikam::PreviewLoadingTask::execute (this=0x304b700) at /tmp/tmp.inM9rwW9gU/digikam/core/libs/threadimageio/preview/previewtask.cpp:286
&gt; #8  0x00007ffff797b00e in Digikam::LoadSaveThread::run (this=0x7fffd8009b50) at /tmp/tmp.inM9rwW9gU/digikam/core/libs/threadimageio/fileio/loadsavethread.cpp:133
&gt; #9  0x00007ffff799b99e in Digikam::DynamicThread::Private::run (this=0x31128a0) at /tmp/tmp.inM9rwW9gU/digikam/core/libs/threads/dynamicthread.cpp:183
&gt; #10 0x00007ffff4a337d2 in ?? () from /nix/store/683732s7dq6bxrl267lcadl5lvn6i4nh-qtbase-5.12.0/lib/libQt5Core.so.5
&gt; #11 0x00007ffff4a2f062 in ?? () from /nix/store/683732s7dq6bxrl267lcadl5lvn6i4nh-qtbase-5.12.0/lib/libQt5Core.so.5
&gt; #12 0x00007ffff43faef7 in start_thread () from /nix/store/iykxb0bmfjmi7s53kfg6pjbfpd8jmza6-glibc-2.27/lib/libpthread.so.0
&gt; #13 0x00007ffff433022f in clone () from /nix/store/iykxb0bmfjmi7s53kfg6pjbfpd8jmza6-glibc-2.27/lib/libc.so.6
&gt; (gdb)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1888929</commentid>
    <comment_count>214</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2019-10-31 10:52:32 +0000</bug_when>
    <thetext>Git commit a902eddf0d84b1561e7c7ee75164e58fdeaf8672 by Maik Qualmann.
Committed on 31/10/2019 at 10:51.
Pushed by mqualmann into branch &apos;master&apos;.

use DImg as pointer in static functions

M  +2    -2    core/dplugins/bqm/decorate/watermark/watermark.cpp
M  +1    -1    core/dplugins/bqm/transform/rotate/rotate.cpp
M  +3    -3    core/libs/dimg/dimg_metadata.cpp
M  +54   -54   core/libs/dimg/loaders/dimgloader.cpp
M  +2    -2    core/libs/dimg/loaders/dimgloader.h
M  +1    -1    core/libs/facesengine/detection/dnn/dnnfacedetectorbase.cpp
M  +35   -19   core/libs/threadimageio/fileio/loadsavethread.cpp
M  +4    -4    core/libs/threadimageio/fileio/loadsavethread.h
M  +3    -3    core/libs/threadimageio/preview/previewtask.cpp
M  +1    -1    core/utilities/imageeditor/core/editorcore.cpp

https://invent.kde.org/kde/digikam/commit/a902eddf0d84b1561e7c7ee75164e58fdeaf8672</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1889187</commentid>
    <comment_count>215</comment_count>
    <who name="">timokau</who>
    <bug_when>2019-11-01 21:19:25 +0000</bug_when>
    <thetext>On a902eddf0d84b1561e7c7ee75164e58fdeaf8672 face detection takes unreasonably long again, I assume because the new face recognition branch was merged in. I left it running for some 10 hours and got to 25%, and it didn&apos;t crash in that time at least. I can&apos;t really leave it running much longer than that for a test in a single run, since I want to be able to use the computer and digikam takes up a lot of resources.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1889464</commentid>
    <comment_count>216</comment_count>
    <who name="">caulier.gilles</who>
    <bug_when>2019-11-03 11:51:48 +0000</bug_when>
    <thetext>Timokau,

The long time to scan for face detection is reproducible here and is not a dysfunction.

In fact it&apos;s just a setting to adjust (the level of detection). Currently, the value is too low and here after 4 h of one core processing, it detects a huge list of faces, with a minimal false positive. This DNN algorithm rock really.

So i propose to change the sensitivity values in Advanced Options view.

Gilles Caulier</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1889467</commentid>
    <comment_count>217</comment_count>
    <who name="">caulier.gilles</who>
    <bug_when>2019-11-03 11:56:59 +0000</bug_when>
    <thetext>Maik,

about crash, i recommend to check new cppcheck reports around threadimageio, dimg, and faceengine.

https://www.digikam.org/reports/cppcheck/master/

Look well the virtual calls in constructor warnings.
The copy constructor and equality operator warnings can be just disable definitions in classes to add, but it&apos;s not sure.

I&apos;m sure that errors are located in these reports and must be fixed. the new cppcheck reports better warnings and the list grow a lots compared to previous version (2y old).

Gilles</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1889797</commentid>
    <comment_count>218</comment_count>
    <who name="">timokau</who>
    <bug_when>2019-11-04 23:31:04 +0000</bug_when>
    <thetext>Unfortunately turning down the accuracy doesn&apos;t impact the runtime very significantly. With 2% instead  of 100% it still didn&apos;t get very far (to 12% scanned) in ~6h. It didn&apos;t crash either though, so maybe the crash is fixed.

I agree that the results are impressive though. For a final scan the runtime may be tolerable, since it only needs to be done once.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1890941</commentid>
    <comment_count>219</comment_count>
    <who name="">caulier.gilles</who>
    <bug_when>2019-11-11 14:15:06 +0000</bug_when>
    <thetext>Git commit 85af2a46ebcd7b19ec3b6809c85f587dbbd14f2e by Gilles Caulier.
Committed on 11/11/2019 at 14:11.
Pushed by cgilles into branch &apos;master&apos;.

Face Detection Neural Network optimizations:
Switch from Yolo to SSD model for DNN face detection, as SSD model are lightweight compared to Yolo model and provide very good results.
This commit prevent to install 250Mb of binaray data on the system coming from Yolo inference engine.

M  +8    -7    core/data/facesengine/CMakeLists.txt
M  +1    -1    core/libs/facesengine/detection/facedetector.cpp

https://invent.kde.org/kde/digikam/commit/85af2a46ebcd7b19ec3b6809c85f587dbbd14f2e</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1891109</commentid>
    <comment_count>220</comment_count>
    <who name="">timokau</who>
    <bug_when>2019-11-12 15:25:50 +0000</bug_when>
    <thetext>That is definitely a lot faster! The scan finished once with a specificity of 1%. Then I set it back to 80% and it crashed as follows:

&gt; digikam.general: Cancel Main Thread
&gt; [Thread 0x7fff237fe700 (LWP 9711) exited]
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.general: Try to get preview from &quot;/tmp/tmp.r5KKLL1qk4/Pictures/p/Android/Whatsapp/IMG-20140814-WA0000.jpg&quot;
&gt; digikam.general: Preview quality:  1
&gt; digikam.dimg: &quot;/tmp/tmp.r5KKLL1qk4/Pictures/p/Android/Whatsapp/IMG-20140814-WA0000.jpg&quot; : &quot;JPEG&quot; file identified
&gt; digikam.general: Found 0 faces in &quot;IMG-20140801-WA0006.jpg&quot; QSize(960, 1280) QSize(960, 1280)
&gt; digikam.general: Try to get preview from &quot;/tmp/tmp.r5KKLL1qk4/Pictures/p/Android/Whatsapp/IMG-20140815-WA0000.jpg&quot;
&gt; digikam.general: Preview quality:  1
&gt; digikam.dimg: &quot;/tmp/tmp.r5KKLL1qk4/Pictures/p/Android/Whatsapp/IMG-20140815-WA0000.jpg&quot; : &quot;JPEG&quot; file identified
&gt; digikam.general: Try to get preview from &quot;/tmp/tmp.r5KKLL1qk4/Pictures/p/Android/Whatsapp/IMG-20140815-WA0001.jpg&quot;
&gt; digikam.general: Preview quality:  1
&gt; digikam.dimg: &quot;/tmp/tmp.r5KKLL1qk4/Pictures/p/Android/Whatsapp/IMG-20140815-WA0001.jpg&quot; : &quot;JPEG&quot; file identified
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.general: Try to get preview from &quot;/tmp/tmp.r5KKLL1qk4/Pictures/p/Android/Whatsapp/IMG-20140819-WA0000.jpg&quot;
&gt; digikam.general: Preview quality:  1
&gt; digikam.dimg: &quot;/tmp/tmp.r5KKLL1qk4/Pictures/p/Android/Whatsapp/IMG-20140819-WA0000.jpg&quot; : &quot;JPEG&quot; file identified
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.general: Found 0 faces in &quot;IMG-20140801-WA0007.jpg&quot; QSize(960, 1280) QSize(960, 1280)
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.general: Try to get preview from &quot;/tmp/tmp.r5KKLL1qk4/Pictures/p/Android/Whatsapp/IMG-20140819-WA0001.jpg&quot;
&gt; digikam.general: Preview quality:  1
&gt; digikam.dimg: &quot;/tmp/tmp.r5KKLL1qk4/Pictures/p/Android/Whatsapp/IMG-20140819-WA0001.jpg&quot; : &quot;JPEG&quot; file identified
&gt; digikam.general: Found 0 faces in &quot;IMG-20140801-WA0008.jpg&quot; QSize(960, 1280) QSize(960, 1280)
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.general: Try to get preview from &quot;/tmp/tmp.r5KKLL1qk4/Pictures/p/Android/Whatsapp/IMG-20140820-WA0000.jpg&quot;
&gt; digikam.general: Preview quality:  1
&gt; digikam.dimg: &quot;/tmp/tmp.r5KKLL1qk4/Pictures/p/Android/Whatsapp/IMG-20140820-WA0000.jpg&quot; : &quot;JPEG&quot; file identified
&gt; digikam.general: Found 0 faces in &quot;IMG-20140801-WA0009.jpg&quot; QSize(960, 1280) QSize(960, 1280)
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.general: Try to get preview from &quot;/tmp/tmp.r5KKLL1qk4/Pictures/p/Android/Whatsapp/IMG-20140820-WA0001.jpg&quot;
&gt; digikam.general: Preview quality:  1
&gt; digikam.dimg: &quot;/tmp/tmp.r5KKLL1qk4/Pictures/p/Android/Whatsapp/IMG-20140820-WA0001.jpg&quot; : &quot;JPEG&quot; file identified
&gt; 
&gt; Thread 12847 &quot;Thread (pooled)&quot; received signal SIGBUS, Bus error.
&gt; [Switching to Thread 0x7fff32ffd700 (LWP 7077)]
&gt; QMapData&lt;QString, QVariant&gt;::createNode (left=false, parent=0x0, v=..., k=..., this=0x7fff2400ecd0)
&gt;     at /nix/store/hy0z060pmjwrdrbb0qrii7hnwif8cz1y-qtbase-5.12.0-dev/include/QtCore/qmap.h:228
&gt; 228                 new (&amp;n-&gt;key) Key(k);
&gt; (gdb) bt
&gt; #0  QMapData&lt;QString, QVariant&gt;::createNode (left=false, parent=0x0, v=..., k=..., this=0x7fff2400ecd0)
&gt;     at /nix/store/hy0z060pmjwrdrbb0qrii7hnwif8cz1y-qtbase-5.12.0-dev/include/QtCore/qmap.h:228
&gt; #1  QMapNode&lt;QString, QVariant&gt;::copy (this=0x696769724f656d69, d=d@entry=0x7fff2400ecd0)
&gt;     at /nix/store/hy0z060pmjwrdrbb0qrii7hnwif8cz1y-qtbase-5.12.0-dev/include/QtCore/qmap.h:258
&gt; #2  0x00007ffff788a9d8 in QMap&lt;QString, QVariant&gt;::detach_helper (this=0x2e9df08)
&gt;     at /nix/store/hy0z060pmjwrdrbb0qrii7hnwif8cz1y-qtbase-5.12.0-dev/include/QtCore/qmap.h:1008
&gt; #3  0x00007ffff78ac04d in QMap&lt;QString, QVariant&gt;::detach (this=&lt;optimized out&gt;)
&gt;     at /nix/store/hy0z060pmjwrdrbb0qrii7hnwif8cz1y-qtbase-5.12.0-dev/include/QtCore/qmap.h:364
&gt; #4  QMap&lt;QString, QVariant&gt;::insert (avalue=..., akey=..., this=&lt;optimized out&gt;)
&gt;     at /nix/store/hy0z060pmjwrdrbb0qrii7hnwif8cz1y-qtbase-5.12.0-dev/include/QtCore/qmap.h:706
&gt; #5  Digikam::DImg::setAttribute (this=&lt;optimized out&gt;, key=..., value=...)
&gt;     at /tmp/tmp.r5KKLL1qk4/digikam/core/libs/dimg/dimg_props.cpp:207
&gt; #6  0x00007ffff797f30a in Digikam::LoadSaveThread::exifRotate (image=image@entry=0x473fc98, filePath=...)
&gt;     at /tmp/tmp.r5KKLL1qk4/digikam/core/libs/threadimageio/fileio/loadsavethread.cpp:346
&gt; #7  0x00007ffff7969014 in Digikam::PreviewLoadingTask::execute (this=0x473fab0)
&gt;     at /tmp/tmp.r5KKLL1qk4/digikam/core/libs/threadimageio/preview/previewtask.cpp:296
&gt; #8  0x00007ffff797ecee in Digikam::LoadSaveThread::run (this=0x7fff440dfec0)
&gt;     at /tmp/tmp.r5KKLL1qk4/digikam/core/libs/threadimageio/fileio/loadsavethread.cpp:133
&gt; #9  0x00007ffff799f69e in Digikam::DynamicThread::Private::run (this=0x3725bd0)
&gt;     at /tmp/tmp.r5KKLL1qk4/digikam/core/libs/threads/dynamicthread.cpp:183
&gt; #10 0x00007ffff4b227d2 in ?? () from /nix/store/683732s7dq6bxrl267lcadl5lvn6i4nh-qtbase-5.12.0/lib/libQt5Core.so.5
&gt; #11 0x00007ffff4b1e062 in ?? () from /nix/store/683732s7dq6bxrl267lcadl5lvn6i4nh-qtbase-5.12.0/lib/libQt5Core.so.5
&gt; #12 0x00007ffff44e9ef7 in start_thread () from /nix/store/iykxb0bmfjmi7s53kfg6pjbfpd8jmza6-glibc-2.27/lib/libpthread.so.0
&gt; #13 0x00007ffff441f22f in clone () from /nix/store/iykxb0bmfjmi7s53kfg6pjbfpd8jmza6-glibc-2.27/lib/libc.so.6
&gt; (gdb)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1891110</commentid>
    <comment_count>221</comment_count>
    <who name="">caulier.gilles</who>
    <bug_when>2019-11-12 15:35:48 +0000</bug_when>
    <thetext>Timokau,

I tested DNN face detection while this week end on my huge collection. It crash also few time, and after restart it complete the job.

I investigate to found the bug on my computer, but i&apos;m not sure that it&apos;s the same, as i cannot get a backtrace under GDB. Your trace is instructive... Maik, did you already seen a similar trace before...

Gilles</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1891134</commentid>
    <comment_count>222</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2019-11-12 17:47:00 +0000</bug_when>
    <thetext>This crash is one of many here in the thread. It crashes in a static function to the Exif rotation, writing the DImg attribute into the QMap. The DImg is alone at this moment and not shared with another thread. Problem could be the static function if another thread should go through the function at the same time. As I said modern compilers should prevent it.

Gilles, a bugtrace from your crash would be interesting now. you probably need many images that are not yet rotated, like the WhatsApp images by Timokau. But then there is still the strange crash in the overridden function.

Maik</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1891136</commentid>
    <comment_count>223</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2019-11-12 17:52:36 +0000</bug_when>
    <thetext>Git commit c3476af439fa8351eee23f4477aaed8b2c00f56c by Maik Qualmann.
Committed on 12/11/2019 at 17:51.
Pushed by mqualmann into branch &apos;master&apos;.

protect ExifRotate with a QMutex

M  +2    -0    core/libs/threadimageio/preview/previewtask.cpp

https://invent.kde.org/kde/digikam/commit/c3476af439fa8351eee23f4477aaed8b2c00f56c</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1891137</commentid>
    <comment_count>224</comment_count>
    <who name="">caulier.gilles</who>
    <bug_when>2019-11-12 17:55:42 +0000</bug_when>
    <thetext>Inter thread static function uses are definitively the hell. Protect with a mutex, or make this function not static, included in DImg class for ex.

My crash is difficult to capture. Even is a core dumped file is generated, as said the system, i cannot found it. systemd report to core dumped file to list. This is nothing stored digiKam run path. So perhaps something is missing on system configuration...

Gilles</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1891139</commentid>
    <comment_count>225</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2019-11-12 18:17:47 +0000</bug_when>
    <thetext>Okay, then the best way to move these functions to the DImg class.

Maik</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1891153</commentid>
    <comment_count>226</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2019-11-12 19:00:47 +0000</bug_when>
    <thetext>We&apos;ll wait and see what the QMutex changes. We have access to the InfoProvider() in the static exifOrientation() function. This can not be easily moved to DImg.

Maik</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1891225</commentid>
    <comment_count>227</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2019-11-12 21:46:56 +0000</bug_when>
    <thetext>Git commit 66346eddf9faafc0d8a16c603385e4b450a96968 by Maik Qualmann.
Committed on 12/11/2019 at 21:46.
Pushed by mqualmann into branch &apos;master&apos;.

first step to move static function to DImg
next step move static uniqueHash() functions

M  +2    -3    core/dplugins/bqm/decorate/watermark/watermark.cpp
M  +1    -2    core/dplugins/bqm/transform/rotate/rotate.cpp
M  +22   -1    core/libs/dimg/dimg.h
M  +10   -0    core/libs/dimg/dimg_metadata.cpp
M  +1    -0    core/libs/dimg/dimg_p.h
M  +25   -0    core/libs/dimg/dimg_transform.cpp
M  +0    -56   core/libs/threadimageio/fileio/loadsavethread.cpp
M  +0    -16   core/libs/threadimageio/fileio/loadsavethread.h
M  +3    -5    core/libs/threadimageio/preview/previewtask.cpp
M  +2    -4    core/utilities/imageeditor/core/editorcore.cpp

https://invent.kde.org/kde/digikam/commit/66346eddf9faafc0d8a16c603385e4b450a96968</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1891231</commentid>
    <comment_count>228</comment_count>
    <who name="">caulier.gilles</who>
    <bug_when>2019-11-12 22:01:26 +0000</bug_when>
    <thetext>With the mutex, it crash after a long time to detect faces (completed at 80%):


digikam.dimg: &quot;/mnt/data/photos/TESTS/JPEG/Horizontal/cicada.jpg&quot; : &quot;JPEG&quot; file identified
digikam.general: Using  8  CPU core to run threads
digikam.general: Using  8  CPU core to run threads
digikam.general: Action Thread run  1  new jobs
digikam.general: Action Thread run  1  new jobs
digikam.metaengine: Exif color-space tag is sRGB. Using default sRGB ICC profile.
digikam.general: One job is done
digikam.general: Cancel Main Thread
digikam.general: One job is done
digikam.general: Cancel Main Thread
digikam.general: Try to get preview from &quot;/mnt/data/photos/TESTS/JPEG/Horizontal/DSC00626.JPG&quot;
digikam.general: Preview quality:  1
digikam.dimg: &quot;/mnt/data/photos/TESTS/JPEG/Horizontal/DSC00626.JPG&quot; : &quot;JPEG&quot; file identified
digikam.metaengine: Exiv2 ( 2 ) :  Directory SonyMinolta, entry 0x0088: Data area exceeds data buffer, ignoring it.

digikam.general: Found 0 faces in &quot;CANON-IXUS850.JPG&quot; QSize(3072, 2304) QSize(3072, 2304)
digikam.general: Removing old entries ()
digikam.general: Check for finish:  42 packages, 0 infos to filter, hasFinished() false
digikam.general: Found 0 faces in &quot;CANON-POWERSHOTA70-01.JPG&quot; QSize(2048, 1536) QSize(2048, 1536)
digikam.general: Removing old entries ()
digikam.general: Check for finish:  41 packages, 0 infos to filter, hasFinished() false
digikam.metaengine: Exif color-space tag is sRGB. Using default sRGB ICC profile.
digikam.general: Try to get preview from &quot;/mnt/data/photos/TESTS/JPEG/Horizontal/DSCF2180.JPG&quot;
digikam.general: Preview quality:  1
digikam.dimg: &quot;/mnt/data/photos/TESTS/JPEG/Horizontal/DSCF2180.JPG&quot; : &quot;JPEG&quot; file identified
digikam.general: Found 0 faces in &quot;CANON-POWERSHOTA70-02.JPG&quot; QSize(2048, 1536) QSize(2048, 1536)
digikam.general: Removing old entries ()
digikam.general: Check for finish:  40 packages, 0 infos to filter, hasFinished() false
digikam.facesengine: Good rect =  QRect(222,213 41x43) , conf =  0.684318
digikam.general: Found 1 faces in &quot;car.jpg&quot; QSize(1600, 1200) QSize(1600, 1200)
digikam.general: Removing old entries (FaceTagsIface(1, image 33634, tag 3, regionQRect(1184,939 219x229))
digikam.general: Check for finish:  39 packages, 0 infos to filter, hasFinished() false
digikam.metaengine: Exif color-space tag is sRGB. Using default sRGB ICC profile.
digikam.general: Try to get preview from &quot;/mnt/data/photos/TESTS/JPEG/Horizontal/DSCF2260.JPG&quot;
digikam.general: Preview quality:  1
digikam.dimg: &quot;/mnt/data/photos/TESTS/JPEG/Horizontal/DSCF2260.JPG&quot; : &quot;JPEG&quot; file identified
digikam.general: Found 0 faces in &quot;cicada.jpg&quot; QSize(1280, 960) QSize(1280, 960)
digikam.general: Removing old entries ()
digikam.general: Check for finish:  38 packages, 0 infos to filter, hasFinished() false
digikam.general: Using  8  CPU core to run threads
digikam.general: Action Thread run  1  new jobs
digikam.database: &quot; ( ( (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=?  ) ) &quot;
digikam.database: Search query:
 &quot;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=?  ) )  );&quot; 
 (QVariant(int, 3), QVariant(int, 3), QVariant(QString, &quot;autodetectedPerson&quot;), QVariant(int, 3), QVariant(int, 3), QVariant(QString, &quot;autodetectedFace&quot;), QVariant(int, 3), QVariant(int, 3), QVariant(QString, &quot;tagRegion&quot;))
digikam.general: Found 0 faces in &quot;DSC00626.JPG&quot; QSize(3872, 2592) QSize(3872, 2592)
digikam.database: Search result: 8466
digikam.general: Removing old entries ()
digikam.metaengine: Exif color-space tag is sRGB. Using default sRGB ICC profile.
digikam.general: Try to get preview from &quot;/mnt/data/photos/TESTS/JPEG/Horizontal/flower.jpg&quot;
digikam.general: Preview quality:  1
digikam.dimg: &quot;/mnt/data/photos/TESTS/JPEG/Horizontal/flower.jpg&quot; : &quot;JPEG&quot; file identified
digikam.general: Check for finish:  37 packages, 0 infos to filter, hasFinished() false
digikam.general: Try to get preview from &quot;/mnt/data/photos/TESTS/JPEG/Horizontal/FromEFPost01.JPG&quot;
digikam.general: Preview quality:  1
digikam.dimg: &quot;/mnt/data/photos/TESTS/JPEG/Horizontal/FromEFPost01.JPG&quot; : &quot;JPEG&quot; file identified
digikam.metaengine: Exif color-space tag is sRGB. Using default sRGB ICC profile.
digikam.general: Try to get preview from &quot;/mnt/data/photos/TESTS/JPEG/Horizontal/FromEFPost02.JPG&quot;
digikam.general: Preview quality:  1
digikam.dimg: &quot;/mnt/data/photos/TESTS/JPEG/Horizontal/FromEFPost02.JPG&quot; : &quot;JPEG&quot; file identified
digikam.metaengine: Exif color-space tag is sRGB. Using default sRGB ICC profile.
digikam.general: Try to get preview from &quot;/mnt/data/photos/TESTS/JPEG/Horizontal/FromEFPost03.JPG&quot;
digikam.general: Preview quality:  1
digikam.dimg: &quot;/mnt/data/photos/TESTS/JPEG/Horizontal/FromEFPost03.JPG&quot; : &quot;JPEG&quot; file identified
digikam.metaengine: Exif color-space tag is sRGB. Using default sRGB ICC profile.
digikam.general: Try to get preview from &quot;/mnt/data/photos/TESTS/JPEG/Horizontal/FUJI-FINEPIXS7000.JPG&quot;
digikam.general: Preview quality:  1
digikam.dimg: &quot;/mnt/data/photos/TESTS/JPEG/Horizontal/FUJI-FINEPIXS7000.JPG&quot; : &quot;JPEG&quot; file identified
digikam.general: Found 0 faces in &quot;DSCF2180.JPG&quot; QSize(3648, 2736) QSize(3648, 2736)
digikam.general: Removing old entries ()
digikam.metaengine: Exif color-space tag is sRGB. Using default sRGB ICC profile.
digikam.general: Try to get preview from &quot;/mnt/data/photos/TESTS/JPEG/Horizontal/FUJI-FINEPIXS9500.JPG&quot;
digikam.general: Preview quality:  1
digikam.dimg: &quot;/mnt/data/photos/TESTS/JPEG/Horizontal/FUJI-FINEPIXS9500.JPG&quot; : &quot;JPEG&quot; file identified
digikam.general: Cancel Main Thread
digikam.general: One job is done
digikam.general: Check for finish:  36 packages, 0 infos to filter, hasFinished() false
digikam.general: Cancel Main Thread
digikam.general: Found 0 faces in &quot;DSCF2260.JPG&quot; QSize(3648, 2736) QSize(3648, 2736)
digikam.general: Removing old entries ()
digikam.general: Check for finish:  35 packages, 0 infos to filter, hasFinished() false
Segmentation fault (core dumped)
[gilles@localhost build]$ ll
total 65976</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1891232</commentid>
    <comment_count>229</comment_count>
    <who name="">caulier.gilles</who>
    <bug_when>2019-11-12 22:03:20 +0000</bug_when>
    <thetext>Note : i don&apos;t yet tested your last commit #66346eddf9faafc0d8a16c603385e4b450a96968

Test was processed with this one : #c3476af439fa8351eee23f4477aaed8b2c00f56c

Gilles</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1891357</commentid>
    <comment_count>230</comment_count>
    <who name="">timokau</who>
    <bug_when>2019-11-13 16:07:00 +0000</bug_when>
    <thetext>The scan came very close to finishing, then this (with 816d4e61b9cf9ddbaa41381c99e67e0c60ecae75, which came after your latest fix):

&gt; digikam.general: Found 1 faces in &quot;IMG_20171228_134932_1.jpg&quot; QSize(1944, 2592) QSize(1944, 2592)
&gt; digikam.general: Try to get preview from &quot;/tmp/tmp.2P4nPAFBno/Pictures/p/images/new-pics/DCIM/Camera/IMG_20171228_162912.jpg&quot;
&gt; digikam.general: Preview quality:  1
&gt; digikam.dimg: &quot;/tmp/tmp.2P4nPAFBno/Pictures/p/images/new-pics/DCIM/Camera/IMG_20171228_162912.jpg&quot; : &quot;JPEG&quot; file identified
&gt; digikam.metaengine: Exif color-space tag is sRGB. Using default sRGB ICC profile.
&gt; digikam.general: Try to get preview from &quot;/tmp/tmp.2P4nPAFBno/Pictures/p/images/new-pics/DCIM/Camera/IMG_20171228_162921.jpg&quot;
&gt; digikam.general: Preview quality:  1
&gt; digikam.dimg: &quot;/tmp/tmp.2P4nPAFBno/Pictures/p/images/new-pics/DCIM/Camera/IMG_20171228_162921.jpg&quot; : &quot;JPEG&quot; file identified
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.facesengine: Good rect =  QRect(164,93 63x88) , conf =  0.999894
&gt; digikam.general: Found 1 faces in &quot;IMG_20171228_134933.jpg&quot; QSize(1944, 2592) QSize(1944, 2592)
&gt; digikam.metaengine: Exif color-space tag is sRGB. Using default sRGB ICC profile.
&gt; digikam.general: Using  4  CPU core to run threads
&gt; [New Thread 0x7fff257fa700 (LWP 25987)]
&gt; digikam.general: Action Thread run  1  new jobs
&gt; [New Thread 0x7fff26ffd700 (LWP 25988)]
&gt; digikam.database: &quot; ( ( (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=
&gt; ?)) AND ImageTagProperties.property=?  ) ) &quot;
&gt; digikam.database: Search query:
&gt;  &quot;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
&gt;         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 ( (ImageTagPrope
&gt; rties.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=?  ) )  );&quot;
&gt;  (QVariant(int, 6), QVariant(int, 6), QVariant(QString, &quot;autodetectedPerson&quot;), QVariant(int, 6), QVariant(int, 6), QVariant(QString, &quot;autodetectedFace&quot;), QVariant(int, 6), QVariant(int, 6), QVariant(QString, &quot;tagRegion&quot;))
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.general: Try to get preview from &quot;/tmp/tmp.2P4nPAFBno/Pictures/p/images/new-pics/DCIM/Camera/IMG_20171228_162932.jpg&quot;
&gt; digikam.general: Preview quality:  1
&gt; digikam.dimg: &quot;/tmp/tmp.2P4nPAFBno/Pictures/p/images/new-pics/DCIM/Camera/IMG_20171228_162932.jpg&quot; : &quot;JPEG&quot; file identified
&gt; digikam.general: Try to get preview from &quot;/tmp/tmp.2P4nPAFBno/Pictures/p/images/new-pics/DCIM/Camera/IMG_20171228_163036.jpg&quot;
&gt; digikam.general: Preview quality:  1
&gt; digikam.dimg: &quot;/tmp/tmp.2P4nPAFBno/Pictures/p/images/new-pics/DCIM/Camera/IMG_20171228_163036.jpg&quot; : &quot;JPEG&quot; file identified
&gt; digikam.database: Search result: 3677
&gt; digikam.general: Cancel Main Thread
&gt; digikam.general: One job is done
&gt; digikam.metaengine: Exif color-space tag is sRGB. Using default sRGB ICC profile.
&gt; digikam.general: Found 0 faces in &quot;IMG_20171228_135010.jpg&quot; QSize(3120, 4208) QSize(3120, 4208)
&gt; digikam.general: Cancel Main Thread
&gt; digikam.general: Found 0 faces in &quot;IMG_20171228_135012.jpg&quot; QSize(3120, 4208) QSize(3120, 4208)
&gt; [Thread 0x7fff257fa700 (LWP 25987) exited]
&gt; [Thread 0x7fff26ffd700 (LWP 25988) exited]
&gt; 
&gt; Thread 31 &quot;Thread (pooled)&quot; received signal SIGSEGV, Segmentation fault.
&gt; [Switching to Thread 0x7fff5effb700 (LWP 17967)]
&gt; 0x00007ffff78ac43b in std::__atomic_base&lt;int&gt;::load (__m=std::memory_order_relaxed, this=&lt;optimized out&gt;)
&gt;     at /nix/store/wr5dlcw1asw8dwgm4bwjmga8f52m5lfx-gcc-7.4.0/include/c++/7.4.0/bits/atomic_base.h:396
&gt; 396             return __atomic_load_n(&amp;_M_i, __m);
&gt; (gdb) bt
&gt; #0  0x00007ffff78ac43b in std::__atomic_base&lt;int&gt;::load (__m=std::memory_order_relaxed, this=&lt;optimized out&gt;)
&gt;     at /nix/store/wr5dlcw1asw8dwgm4bwjmga8f52m5lfx-gcc-7.4.0/include/c++/7.4.0/bits/atomic_base.h:396
&gt; #1  QAtomicOps&lt;int&gt;::load&lt;int&gt; (_q_value=...)
&gt;     at /nix/store/hy0z060pmjwrdrbb0qrii7hnwif8cz1y-qtbase-5.12.0-dev/include/QtCore/qatomic_cxx11.h:227
&gt; #2  QBasicAtomicInteger&lt;int&gt;::load (this=&lt;optimized out&gt;)
&gt;     at /nix/store/hy0z060pmjwrdrbb0qrii7hnwif8cz1y-qtbase-5.12.0-dev/include/QtCore/qbasicatomic.h:103
&gt; #3  QtPrivate::RefCount::isShared (this=&lt;optimized out&gt;)
&gt;     at /nix/store/hy0z060pmjwrdrbb0qrii7hnwif8cz1y-qtbase-5.12.0-dev/include/QtCore/qrefcount.h:101
&gt; #4  QMap&lt;QString, QVariant&gt;::detach (this=&lt;optimized out&gt;)
&gt;     at /nix/store/hy0z060pmjwrdrbb0qrii7hnwif8cz1y-qtbase-5.12.0-dev/include/QtCore/qmap.h:364
&gt; #5  QMap&lt;QString, QVariant&gt;::insert (avalue=..., akey=..., this=&lt;optimized out&gt;)
&gt;     at /nix/store/hy0z060pmjwrdrbb0qrii7hnwif8cz1y-qtbase-5.12.0-dev/include/QtCore/qmap.h:706
&gt; #6  Digikam::DImg::setAttribute (this=0x3055ee8, key=..., value=...)
&gt;     at /tmp/tmp.2P4nPAFBno/digikam/core/libs/dimg/dimg_props.cpp:207
&gt; #7  0x00007ffff78a4696 in Digikam::DImg::load (this=this@entry=0x3055ee8, filePath=..., loadFlagsInt=loadFlagsInt@entry=63,
&gt;     observer=observer@entry=0x3055d10, rawDecodingSettings=...) at /tmp/tmp.2P4nPAFBno/digikam/core/libs/dimg/dimg_fileio.cpp:135
&gt; #8  0x00007ffff78a5970 in Digikam::DImg::load (this=this@entry=0x3055ee8, filePath=..., observer=observer@entry=0x3055d10,
&gt;     rawDecodingSettings=...) at /tmp/tmp.2P4nPAFBno/digikam/core/libs/dimg/dimg_fileio.cpp:63
&gt; #9  0x00007ffff7969180 in Digikam::PreviewLoadingTask::execute (this=0x3055d00)
&gt;     at /tmp/tmp.2P4nPAFBno/digikam/core/libs/threadimageio/preview/previewtask.cpp:286
&gt; #10 0x00007ffff797f3ae in Digikam::LoadSaveThread::run (this=0x2eb68d0)
&gt;     at /tmp/tmp.2P4nPAFBno/digikam/core/libs/threadimageio/fileio/loadsavethread.cpp:133
&gt; #11 0x00007ffff799fa8e in Digikam::DynamicThread::Private::run (this=0x199ebf0)
&gt;     at /tmp/tmp.2P4nPAFBno/digikam/core/libs/threads/dynamicthread.cpp:183
&gt; #12 0x00007ffff4b227d2 in ?? () from /nix/store/683732s7dq6bxrl267lcadl5lvn6i4nh-qtbase-5.12.0/lib/libQt5Core.so.5
&gt; #13 0x00007ffff4b1e062 in ?? () from /nix/store/683732s7dq6bxrl267lcadl5lvn6i4nh-qtbase-5.12.0/lib/libQt5Core.so.5
&gt; #14 0x00007ffff44e9ef7 in start_thread () from /nix/store/iykxb0bmfjmi7s53kfg6pjbfpd8jmza6-glibc-2.27/lib/libpthread.so.0
&gt; #15 0x00007ffff441f22f in clone () from /nix/store/iykxb0bmfjmi7s53kfg6pjbfpd8jmza6-glibc-2.27/lib/libc.so.6
&gt; (gdb)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1891401</commentid>
    <comment_count>231</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2019-11-13 19:38:08 +0000</bug_when>
    <thetext>Git commit de875df40545d59cf038a0134c92377aed8d6187 by Maik Qualmann.
Committed on 13/11/2019 at 19:37.
Pushed by mqualmann into branch &apos;master&apos;.

move static functions to DImg for more possible thread safe

M  +11   -5    core/libs/dimg/dimg.h
M  +24   -0    core/libs/dimg/dimg_fileio.cpp
M  +110  -6    core/libs/dimg/dimg_metadata.cpp
M  +1    -1    core/libs/dimg/dimg_p.h
M  +1    -157  core/libs/dimg/loaders/dimgloader.cpp
M  +0    -4    core/libs/dimg/loaders/dimgloader.h

https://invent.kde.org/kde/digikam/commit/de875df40545d59cf038a0134c92377aed8d6187</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1891572</commentid>
    <comment_count>232</comment_count>
    <who name="">timokau</who>
    <bug_when>2019-11-14 14:19:02 +0000</bug_when>
    <thetext>This time (de875df40545d59cf038a0134c92377aed8d6187) two full scans succeeded. The third one crashed:

&gt; digikam.general: Try to get preview from &quot;/tmp/tmp.pp4d0tIJXq/Pictures/p/Android/Camera/IMG_20140924_125327.jpg&quot;
&gt; digikam.general: Preview quality:  1
&gt; digikam.dimg: &quot;/tmp/tmp.pp4d0tIJXq/Pictures/p/Android/Camera/IMG_20140924_125327.jpg&quot; : &quot;JPEG&quot; file identified
&gt; digikam.metaengine: Exif color-space tag is sRGB. Using default sRGB ICC profile.
&gt; digikam.general: Try to get preview from &quot;/tmp/tmp.pp4d0tIJXq/Pictures/p/Android/Camera/IMG_20141006_172222.jpg&quot;
&gt; digikam.general: Preview quality:  1
&gt; digikam.dimg: &quot;/tmp/tmp.pp4d0tIJXq/Pictures/p/Android/Camera/IMG_20141006_172222.jpg&quot; : &quot;JPEG&quot; file identified
&gt; digikam.general: Using  4  CPU core to run threads
&gt; [New Thread 0x7fff3ffff700 (LWP 19696)]
&gt; digikam.general: Cancel Main Thread
&gt; digikam.general: Action Thread run  1  new jobs
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; [New Thread 0x7fff13fff700 (LWP 19697)]
&gt; [Thread 0x7fff2b7fe700 (LWP 19669) exited]
&gt; digikam.database: &quot; ( ( (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=?)
&gt; ) AND ImageTagProperties.property=?  ) ) &quot;
&gt; digikam.database: Search query:
&gt;  &quot;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
&gt;       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 ( (ImageTagPropertie
&gt; s.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=?  ) )  );&quot;
&gt;  (QVariant(int, 6), QVariant(int, 6), QVariant(QString, &quot;autodetectedPerson&quot;), QVariant(int, 6), QVariant(int, 6), QVariant(QString, &quot;autodetectedFace&quot;), QVariant(int, 6), QVariant(int, 6), QVariant(QString, &quot;tagRegion&quot;))
&gt; digikam.metaengine: Exif color-space tag is sRGB. Using default sRGB ICC profile.
&gt; digikam.database: Search result: 3849
&gt; digikam.general: Found 0 faces in &quot;IMG_20140910_121849.jpg&quot; QSize(2448, 3264) QSize(2448, 3264)
&gt; digikam.general: Removing old entries ()
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.general: Try to get preview from &quot;/tmp/tmp.pp4d0tIJXq/Pictures/p/Android/Camera/IMG_20141011_001014.jpg&quot;
&gt; digikam.general: Preview quality:  1
&gt; digikam.dimg: &quot;/tmp/tmp.pp4d0tIJXq/Pictures/p/Android/Camera/IMG_20141011_001014.jpg&quot; : &quot;JPEG&quot; file identified
&gt; digikam.general: Cancel Main Thread
&gt; [Thread 0x7fff3ffff700 (LWP 19696) exited]
&gt; digikam.general: One job is done
&gt; digikam.general: Using  4  CPU core to run threads
&gt; digikam.metaengine: Exif color-space tag is sRGB. Using default sRGB ICC profile.
&gt; [New Thread 0x7fff3ffff700 (LWP 19704)]
&gt; 
&gt; Thread 14741 &quot;Thread (pooled)&quot; received signal SIGSEGV, Segmentation fault.
&gt; [Switching to Thread 0x7fff3f7fe700 (LWP 12948)]
&gt; 0x00007ffff79693e2 in Digikam::PreviewLoadingTask::execute (this=0x3044550)
&gt;     at /tmp/tmp.pp4d0tIJXq/digikam/core/libs/threadimageio/preview/previewtask.cpp:404
&gt; 404                 postProcess();
&gt; (gdb) bt
&gt; #0  0x00007ffff79693e2 in Digikam::PreviewLoadingTask::execute (this=0x3044550)
&gt;     at /tmp/tmp.pp4d0tIJXq/digikam/core/libs/threadimageio/preview/previewtask.cpp:404
&gt; #1  0x00007ffff797f3be in Digikam::LoadSaveThread::run (this=0x2fd17d0)
&gt;     at /tmp/tmp.pp4d0tIJXq/digikam/core/libs/threadimageio/fileio/loadsavethread.cpp:133
&gt; #2  0x00007ffff799fa9e in Digikam::DynamicThread::Private::run (this=0x4ddada0)
&gt;     at /tmp/tmp.pp4d0tIJXq/digikam/core/libs/threads/dynamicthread.cpp:183
&gt; #3  0x00007ffff4b227d2 in ?? () from /nix/store/683732s7dq6bxrl267lcadl5lvn6i4nh-qtbase-5.12.0/lib/libQt5Core.so.5
&gt; #4  0x00007ffff4b1e062 in ?? () from /nix/store/683732s7dq6bxrl267lcadl5lvn6i4nh-qtbase-5.12.0/lib/libQt5Core.so.5
&gt; #5  0x00007ffff44e9ef7 in start_thread () from /nix/store/iykxb0bmfjmi7s53kfg6pjbfpd8jmza6-glibc-2.27/lib/libpthread.so.0
&gt; #6  0x00007ffff441f22f in clone () from /nix/store/iykxb0bmfjmi7s53kfg6pjbfpd8jmza6-glibc-2.27/lib/libc.so.6
&gt; (gdb)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1891598</commentid>
    <comment_count>233</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2019-11-14 15:39:09 +0000</bug_when>
    <thetext>Ok, I think we are on the right way, because several attempts are needed to reproduce a crash. Also this crash we have rarely seen here in this long thread. I already have an idea...

Maik</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1891617</commentid>
    <comment_count>234</comment_count>
    <who name="">caulier.gilles</who>
    <bug_when>2019-11-14 16:48:01 +0000</bug_when>
    <thetext>I commit this fix too :

https://invent.kde.org/kde/digikam/commit/ce0cac88500e3bcfc7219baa805dabb6d91688b1

WorkerObject class in used especially in face management pipeline for face detection and recognition process...

Gilles</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1891706</commentid>
    <comment_count>235</comment_count>
    <who name="">timokau</who>
    <bug_when>2019-11-14 20:35:39 +0000</bug_when>
    <thetext>With 35339b4dbf2253dd1f60d3a374203d8717b05d86 (including Gilles&apos; fix):

&gt; digikam.dimg: &quot;/tmp/tmp.0Tdwmd06eD/Pictures/p/Kamera-Uploads/2014-03-19 13.07.31.jpg&quot; : &quot;JPEG&quot; file identified
&gt; digikam.metaengine: Exif color-space tag is sRGB. Using default sRGB ICC profile.
&gt; digikam.general: Try to get preview from &quot;/tmp/tmp.0Tdwmd06eD/Pictures/p/Kamera-Uploads/2014-03-19 13.07.34.jpg&quot;
&gt; digikam.general: Preview quality:  1
&gt; digikam.dimg: &quot;/tmp/tmp.0Tdwmd06eD/Pictures/p/Kamera-Uploads/2014-03-19 13.07.34.jpg&quot; : &quot;JPEG&quot; file identified
&gt; digikam.metaengine: Exif color-space tag is sRGB. Using default sRGB ICC profile.
&gt; digikam.general: Try to get preview from &quot;/tmp/tmp.0Tdwmd06eD/Pictures/p/Kamera-Uploads/2014-03-21 12.16.50.jpg&quot;
&gt; digikam.general: Preview quality:  1
&gt; digikam.dimg: &quot;/tmp/tmp.0Tdwmd06eD/Pictures/p/Kamera-Uploads/2014-03-21 12.16.50.jpg&quot; : &quot;JPEG&quot; file identified
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.general: Found 0 faces in &quot;2014-03-04 06.04.54.png&quot; QSize(720, 1280) QSize(720, 1280)
&gt; digikam.general: Removing old entries ()
&gt; digikam.metaengine: Exif color-space tag is sRGB. Using default sRGB ICC profile.
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.general: Try to get preview from &quot;/tmp/tmp.0Tdwmd06eD/Pictures/p/Kamera-Uploads/2014-03-22 13.33.55.jpg&quot;
&gt; digikam.general: Preview quality:  1
&gt; digikam.dimg: &quot;/tmp/tmp.0Tdwmd06eD/Pictures/p/Kamera-Uploads/2014-03-22 13.33.55.jpg&quot; : &quot;JPEG&quot; file identified
&gt; digikam.metaengine: Exif color-space tag is sRGB. Using default sRGB ICC profile.
&gt; digikam.general: Found 0 faces in &quot;2014-03-04 06.05.02.png&quot; QSize(720, 1280) QSize(720, 1280)
&gt; digikam.general: Removing old entries ()
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.general: Found 0 faces in &quot;2014-03-04 08.34.23.png&quot; QSize(720, 1280) QSize(720, 1280)
&gt; digikam.general: Removing old entries ()
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.facesengine: Good rect =  QRect(96,102 96x121) , conf =  0.999628
&gt; digikam.general: Found 1 faces in &quot;2014-03-04 09.35.03.jpg&quot; QSize(1392, 1392) QSize(1392, 1392)
&gt; digikam.general: Removing old entries ()
&gt; 
&gt; Thread 24 &quot;Thread (pooled)&quot; received signal SIGSEGV, Segmentation fault.
&gt; [Switching to Thread 0x7fff5fffd700 (LWP 6656)]
&gt; 0x00007ffff798ad87 in Digikam::LoadingTask::progressInfo (this=0x364dc60, img=0x364de48, progress=1)
&gt;     at /tmp/tmp.0Tdwmd06eD/digikam/core/libs/threadimageio/fileio/loadsavetask.cpp:65
&gt; 65              if (m_thread &amp;&amp; m_thread-&gt;querySendNotifyEvent())
&gt; (gdb) bt
&gt; #0  0x00007ffff798ad87 in Digikam::LoadingTask::progressInfo (this=0x364dc60, img=0x364de48, progress=1) at /tmp/tmp.0Tdwmd06eD/digikam/core/libs/threadimageio/fileio/loadsavetask.cpp:65
&gt; #1  0x00007fffb209e417 in DigikamJPEGDImgPlugin::DImgJPEGLoader::load (this=0x7fff40383700, filePath=..., observer=0x364dc70) at /tmp/tmp.0Tdwmd06eD/digikam/core/dplugins/dimg/jpeg/dimgjpegloader_load.cpp:621
&gt; #2  0x00007ffff78a3a8c in Digikam::DImg::load (this=this@entry=0x364de48, filePath=..., loadFlagsInt=loadFlagsInt@entry=63, observer=observer@entry=0x364dc70, rawDecodingSettings=...)
&gt;     at /tmp/tmp.0Tdwmd06eD/digikam/core/libs/dimg/dimg_fileio.cpp:138
&gt; #3  0x00007ffff78a4d20 in Digikam::DImg::load (this=this@entry=0x364de48, filePath=..., observer=observer@entry=0x364dc70, rawDecodingSettings=...)
&gt;     at /tmp/tmp.0Tdwmd06eD/digikam/core/libs/dimg/dimg_fileio.cpp:63
&gt; #4  0x00007ffff79690f0 in Digikam::PreviewLoadingTask::execute (this=0x364dc60) at /tmp/tmp.0Tdwmd06eD/digikam/core/libs/threadimageio/preview/previewtask.cpp:286
&gt; #5  0x00007ffff797f31e in Digikam::LoadSaveThread::run (this=0x287c7e0) at /tmp/tmp.0Tdwmd06eD/digikam/core/libs/threadimageio/fileio/loadsavethread.cpp:133
&gt; #6  0x00007ffff799f9fe in Digikam::DynamicThread::Private::run (this=0x2c9ff30) at /tmp/tmp.0Tdwmd06eD/digikam/core/libs/threads/dynamicthread.cpp:183
&gt; #7  0x00007ffff4b227d2 in ?? () from /nix/store/683732s7dq6bxrl267lcadl5lvn6i4nh-qtbase-5.12.0/lib/libQt5Core.so.5
&gt; #8  0x00007ffff4b1e062 in ?? () from /nix/store/683732s7dq6bxrl267lcadl5lvn6i4nh-qtbase-5.12.0/lib/libQt5Core.so.5
&gt; #9  0x00007ffff44e9ef7 in start_thread () from /nix/store/iykxb0bmfjmi7s53kfg6pjbfpd8jmza6-glibc-2.27/lib/libpthread.so.0
&gt; #10 0x00007ffff441f22f in clone () from /nix/store/iykxb0bmfjmi7s53kfg6pjbfpd8jmza6-glibc-2.27/lib/libc.so.6
&gt; (gdb)

This time it crashed during the first attempt, though it got quite far.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1891713</commentid>
    <comment_count>236</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2019-11-14 20:49:39 +0000</bug_when>
    <thetext>Git commit cab5995cacb2bfd97b304c2338b00e2ae176fdff by Maik Qualmann.
Committed on 14/11/2019 at 20:48.
Pushed by mqualmann into branch &apos;master&apos;.

do not add this task to the listeners in the postprocess

M  +2    -2    core/libs/threadimageio/fileio/loadsavetask.cpp

https://invent.kde.org/kde/digikam/commit/cab5995cacb2bfd97b304c2338b00e2ae176fdff</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1891864</commentid>
    <comment_count>237</comment_count>
    <who name="">timokau</who>
    <bug_when>2019-11-15 17:55:51 +0000</bug_when>
    <thetext>With 47e8d093858421c1b95ea17acb396067ffccc8eb:

&gt; digikam.general: Found 0 faces in &quot;IMG_20150502_140220.jpg&quot; QSize(3120, 4208) QSize(3120, 4208)
&gt; digikam.general: Removing old entries ()
&gt; digikam.metaengine: Exif color-space tag is sRGB. Using default sRGB ICC profile.
&gt; digikam.general: Cancel Main Thread
&gt; digikam.general: One job is done
&gt; QPainter::begin: Paint device returned engine == 0, type: 2
&gt; QPainter::setCompositionMode: Painter not active
&gt; QPainter::end: Painter not active, aborted
&gt; QPainter::begin: Paint device returned engine == 0, type: 2
&gt; QPainter::setCompositionMode: Painter not active
&gt; QPainter::end: Painter not active, aborted
&gt; digikam.general: Cancel Main Thread
&gt; QPainter::begin: Paint device returned engine == 0, type: 2
&gt; QPainter::setCompositionMode: Painter not active
&gt; QPainter::end: Painter not active, aborted
&gt; QPainter::begin: Paint device returned engine == 0, type: 2
&gt; QPainter::setCompositionMode: Painter not active
&gt; QPainter::end: Painter not active, aborted
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; [Thread 0x7fff20ff9700 (LWP 26871) exited]
&gt; [Thread 0x7fff237fe700 (LWP 26872) exited]
&gt; 
&gt; Thread 32 &quot;Thread (pooled)&quot; received signal SIGSEGV, Segmentation fault.
&gt; [Switching to Thread 0x7fff3f7fe700 (LWP 25750)]
&gt; Digikam::MetaEngineData::MetaEngineData (this=0x7fff3f7fcda8, other=...)
&gt;     at /tmp/tmp.dCPXcFOXaA/digikam/core/libs/metadataengine/engine/metaengine_data.cpp:43
&gt; 43          d = other.d;
&gt; (gdb) bt
&gt; #0  Digikam::MetaEngineData::MetaEngineData (this=0x7fff3f7fcda8, other=...)
&gt;     at /tmp/tmp.dCPXcFOXaA/digikam/core/libs/metadataengine/engine/metaengine_data.cpp:43
&gt; #1  0x00007ffff78a99e0 in Digikam::DImg::getMetadata (this=&lt;optimized out&gt;)
&gt;     at /tmp/tmp.dCPXcFOXaA/digikam/core/libs/dimg/dimg_props.cpp:167
&gt; #2  0x00007ffff7769d81 in Digikam::DImgLoader::checkExifWorkingColorSpace (this=this@entry=0x7fff2c099670)
&gt;     at /tmp/tmp.dCPXcFOXaA/digikam/core/libs/dimg/loaders/dimgloader.cpp:242
&gt; #3  0x00007fffb209e486 in DigikamJPEGDImgPlugin::DImgJPEGLoader::load (this=0x7fff2c099670, filePath=..., observer=0x3eed580)
&gt;     at /tmp/tmp.dCPXcFOXaA/digikam/core/dplugins/dimg/jpeg/dimgjpegloader_load.cpp:601
&gt; #4  0x00007ffff78a3a8c in Digikam::DImg::load (this=this@entry=0x3eed758, filePath=..., loadFlagsInt=loadFlagsInt@entry=63,
&gt;     observer=observer@entry=0x3eed580, rawDecodingSettings=...) at /tmp/tmp.dCPXcFOXaA/digikam/core/libs/dimg/dimg_fileio.cpp:138
&gt; #5  0x00007ffff78a4d20 in Digikam::DImg::load (this=this@entry=0x3eed758, filePath=..., observer=observer@entry=0x3eed580,
&gt;     rawDecodingSettings=...) at /tmp/tmp.dCPXcFOXaA/digikam/core/libs/dimg/dimg_fileio.cpp:63
&gt; #6  0x00007ffff79690f0 in Digikam::PreviewLoadingTask::execute (this=0x3eed570)
&gt;     at /tmp/tmp.dCPXcFOXaA/digikam/core/libs/threadimageio/preview/previewtask.cpp:286
&gt; #7  0x00007ffff797f31e in Digikam::LoadSaveThread::run (this=0x37280f0)
&gt;     at /tmp/tmp.dCPXcFOXaA/digikam/core/libs/threadimageio/fileio/loadsavethread.cpp:133
&gt; #8  0x00007ffff799f97e in Digikam::DynamicThread::Private::run (this=0x263d1a0)
&gt;     at /tmp/tmp.dCPXcFOXaA/digikam/core/libs/threads/dynamicthread.cpp:183
&gt; #9  0x00007ffff4b217d2 in ?? () from /nix/store/683732s7dq6bxrl267lcadl5lvn6i4nh-qtbase-5.12.0/lib/libQt5Core.so.5
&gt; #10 0x00007ffff4b1d062 in ?? () from /nix/store/683732s7dq6bxrl267lcadl5lvn6i4nh-qtbase-5.12.0/lib/libQt5Core.so.5
&gt; #11 0x00007ffff44e8ef7 in start_thread () from /nix/store/iykxb0bmfjmi7s53kfg6pjbfpd8jmza6-glibc-2.27/lib/libpthread.so.0
&gt; #12 0x00007ffff441e22f in clone () from /nix/store/iykxb0bmfjmi7s53kfg6pjbfpd8jmza6-glibc-2.27/lib/libc.so.6
&gt; (gdb)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1891882</commentid>
    <comment_count>238</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2019-11-15 21:42:19 +0000</bug_when>
    <thetext>Git commit 6aaa6622d706972bf8a532c0a92ea721b11c7fa0 by Maik Qualmann.
Committed on 15/11/2019 at 21:41.
Pushed by mqualmann into branch &apos;master&apos;.

do not add this task to the listeners here

M  +3    -3    core/libs/threadimageio/preview/previewtask.cpp

https://invent.kde.org/kde/digikam/commit/6aaa6622d706972bf8a532c0a92ea721b11c7fa0</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1891918</commentid>
    <comment_count>239</comment_count>
    <who name="">timokau</who>
    <bug_when>2019-11-16 12:16:31 +0000</bug_when>
    <thetext>With 2e3d03a2cea443f32d8a23c85393c345e8308e5b:

&gt; digikam.dimg: &quot;/tmp/tmp.7dg66TNVh9/Pictures/p/images/Telegram Images/223024373_562302.jpg&quot; : &quot;JPEG&quot; file identified
&gt; digikam.general: Found 0 faces in &quot;223023849_735468.jpg&quot; QSize(1280, 1258) QSize(1280, 1258)
&gt; digikam.general: Removing old entries ()
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.general: Try to get preview from &quot;/tmp/tmp.7dg66TNVh9/Pictures/p/images/Telegram Images/223024391_291148.jpg&quot;
&gt; digikam.general: Preview quality:  1
&gt; digikam.dimg: &quot;/tmp/tmp.7dg66TNVh9/Pictures/p/images/Telegram Images/223024391_291148.jpg&quot; : &quot;JPEG&quot; file identified
&gt; digikam.general: Try to get preview from &quot;/tmp/tmp.7dg66TNVh9/Pictures/p/images/Telegram Images/223024438_254640.jpg&quot;
&gt; digikam.general: Preview quality:  1
&gt; digikam.dimg: &quot;/tmp/tmp.7dg66TNVh9/Pictures/p/images/Telegram Images/223024438_254640.jpg&quot; : &quot;JPEG&quot; file identified
&gt; digikam.general: Found 0 faces in &quot;223023852_356023.jpg&quot; QSize(1129, 1280) QSize(1129, 1280)
&gt; digikam.general: Removing old entries ()
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.general: Try to get preview from &quot;/tmp/tmp.7dg66TNVh9/Pictures/p/images/Telegram Images/223024462_270324.jpg&quot;
&gt; digikam.general: Preview quality:  1
&gt; digikam.dimg: &quot;/tmp/tmp.7dg66TNVh9/Pictures/p/images/Telegram Images/223024462_270324.jpg&quot; : &quot;JPEG&quot; file identified
&gt; 
&gt; Thread 1342 &quot;Thread (pooled)&quot; received signal SIGSEGV, Segmentation fault.
&gt; [Switching to Thread 0x7fff41ffb700 (LWP 20326)]
&gt; 0x00007ffff7968321 in Digikam::PreviewLoadingTask::execute (this=0x8e4f920)
&gt;     at /tmp/tmp.7dg66TNVh9/digikam/core/libs/threadimageio/preview/previewtask.cpp:404
&gt; 404                 postProcess();
&gt; (gdb) bt
&gt; #0  0x00007ffff7968321 in Digikam::PreviewLoadingTask::execute (this=0x8e4f920) at /tmp/tmp.7dg66TNVh9/digikam/core/libs/threadimageio/preview/previewtask.cpp:404
&gt; #1  0x00007ffff797e2ee in Digikam::LoadSaveThread::run (this=0x2577e60) at /tmp/tmp.7dg66TNVh9/digikam/core/libs/threadimageio/fileio/loadsavethread.cpp:133
&gt; #2  0x00007ffff799e94e in Digikam::DynamicThread::Private::run (this=0x2f6f240) at /tmp/tmp.7dg66TNVh9/digikam/core/libs/threads/dynamicthread.cpp:183
&gt; #3  0x00007ffff4b1f7d2 in ?? () from /nix/store/683732s7dq6bxrl267lcadl5lvn6i4nh-qtbase-5.12.0/lib/libQt5Core.so.5
&gt; #4  0x00007ffff4b1b062 in ?? () from /nix/store/683732s7dq6bxrl267lcadl5lvn6i4nh-qtbase-5.12.0/lib/libQt5Core.so.5
&gt; #5  0x00007ffff44e6ef7 in start_thread () from /nix/store/iykxb0bmfjmi7s53kfg6pjbfpd8jmza6-glibc-2.27/lib/libpthread.so.0
&gt; #6  0x00007ffff441c22f in clone () from /nix/store/iykxb0bmfjmi7s53kfg6pjbfpd8jmza6-glibc-2.27/lib/libc.so.6
&gt; (gdb)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1891955</commentid>
    <comment_count>240</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2019-11-16 19:13:00 +0000</bug_when>
    <thetext>Git commit eb5a4a61fddaded66f07e57e44cd2d98862a1fa9 by Maik Qualmann.
Committed on 16/11/2019 at 19:12.
Pushed by mqualmann into branch &apos;master&apos;.

fix ICC Manager, must use a DImg reference

M  +9    -8    core/libs/dimg/filters/icc/iccmanager.cpp
M  +3    -5    core/libs/threadimageio/fileio/loadsavetask.cpp
M  +5    -2    core/libs/threadimageio/preview/previewtask.cpp

https://invent.kde.org/kde/digikam/commit/eb5a4a61fddaded66f07e57e44cd2d98862a1fa9</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1891959</commentid>
    <comment_count>241</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2019-11-16 19:40:29 +0000</bug_when>
    <thetext>Git commit da67056beb32c461251661e90d8f4c73f984ce26 by Maik Qualmann.
Committed on 16/11/2019 at 19:39.
Pushed by mqualmann into branch &apos;master&apos;.

revert last commit, private DImg data is shared

M  +6    -6    core/libs/dimg/filters/icc/iccmanager.cpp
M  +1    -1    core/libs/dimg/filters/icc/iccmanager.h

https://invent.kde.org/kde/digikam/commit/da67056beb32c461251661e90d8f4c73f984ce26</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1891969</commentid>
    <comment_count>242</comment_count>
    <who name="">caulier.gilles</who>
    <bug_when>2019-11-16 20:53:21 +0000</bug_when>
    <thetext>Maik, 

The problem from this file can be relevant of the long time problem located in DSharedData container and never fixed.

Look this clang report:

https://www.digikam.org/reports/clang/master/

==&gt; Memory error; Use-after-free; mnt/devel/GIT/6.x/core/libs/dimg/dshareddata.h; operator Digikam::DImg::Private; ligne 120

And look well the analysis. Clang crying about this operator :

inline operator T* ()
{
    return d; &lt;== Use of memory after it is freed
}

...because the memory is released here :

inline DSharedDataPointer&amp; operator=(T* const o)
{
   delete assign(o);    &lt;=== Memory is released	
   return *this;
}

... when this detach function is called :

void DImg::detach()
{
   if (!m_priv-&gt;hasMoreReferences())
   {
      return;
   }

   DSharedDataPointer&lt;Private&gt; old = m_priv; &lt;=== Calling &apos;DSharedDataPointer::operator=&apos;; Returning; memory was released	
   m_priv = new Private;

   copyImageData(old); &lt;=== Calling &apos;DSharedDataPointer::operator Digikam::DImg::Private *&apos; !!!!!!!! BOUM !!!!!!!!
   copyMetaData(old);

   if (old-&gt;data)
   {
       size_t size = allocateData();
       memcpy(m_priv-&gt;data, old-&gt;data, size);
   }
}

Gilles</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1891972</commentid>
    <comment_count>243</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2019-11-16 21:24:23 +0000</bug_when>
    <thetext>Yes, I have already thought about that and switched in DImg to QSharedDataPointer. I can apply the patch as a trial.

Maik</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1891995</commentid>
    <comment_count>244</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2019-11-17 07:26:03 +0000</bug_when>
    <thetext>Git commit f037b05d531c90f95d8f41b7f81d837ace6aeb5b by Maik Qualmann.
Committed on 17/11/2019 at 07:25.
Pushed by mqualmann into branch &apos;master&apos;.

use for a test QExplicitlySharedDataPointer for DImg

M  +2    -2    core/libs/dimg/dimg.cpp
M  +2    -2    core/libs/dimg/dimg.h
M  +2    -2    core/libs/dimg/dimg_copy.cpp
M  +4    -4    core/libs/dimg/dimg_data.cpp
M  +2    -2    core/libs/dimg/dimg_p.h

https://invent.kde.org/kde/digikam/commit/f037b05d531c90f95d8f41b7f81d837ace6aeb5b</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1892225</commentid>
    <comment_count>245</comment_count>
    <who name="">timokau</who>
    <bug_when>2019-11-18 18:20:54 +0000</bug_when>
    <thetext>With b306f5aa14358dd04167b1d197de1fdc86e37bbc (on the 4th run):

&gt; digikam.general: Try to get preview from &quot;/tmp/tmp.sIBLW3QdU7/Pictures/p/Kamera-Uploads/2014-03-13 20.01.02.jpg&quot;
&gt; digikam.general: Preview quality:  1
&gt; digikam.dimg: &quot;/tmp/tmp.sIBLW3QdU7/Pictures/p/Kamera-Uploads/2014-03-13 20.01.02.jpg&quot; : &quot;JPEG&quot; file identified
&gt; digikam.general: Using  4  CPU core to run threads
&gt; [New Thread 0x7fff3ffff700 (LWP 16592)]
&gt; digikam.general: Action Thread run  1  new jobs
&gt; [New Thread 0x7fff31ffb700 (LWP 16593)]
&gt; digikam.database: &quot; ( ( (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=?)
&gt; ) AND ImageTagProperties.property=?  ) ) &quot;
&gt; digikam.database: Search query:
&gt;  &quot;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
&gt;       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 ( (ImageTagPropertie
&gt; s.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=?  ) )  );&quot;
&gt;  (QVariant(int, 6), QVariant(int, 6), QVariant(QString, &quot;autodetectedPerson&quot;), QVariant(int, 6), QVariant(int, 6), QVariant(QString, &quot;autodetectedFace&quot;), QVariant(int, 6), QVariant(int, 6), QVariant(QString, &quot;tagRegion&quot;))
&gt; digikam.metaengine: Exif color-space tag is sRGB. Using default sRGB ICC profile.
&gt; digikam.database: Search result: 3849
&gt; digikam.general: Found 0 faces in &quot;2014-01-07 14.27.05.jpg&quot; QSize(3264, 2448) QSize(3264, 2448)
&gt; digikam.general: Removing old entries ()
&gt; digikam.general: Found 0 faces in &quot;2014-02-05 14.26.20.jpg&quot; QSize(3264, 2448) QSize(3264, 2448)
&gt; digikam.general: Removing old entries ()
&gt; digikam.general: Found 0 faces in &quot;2014-02-07 15.43.22.jpg&quot; QSize(3264, 2448) QSize(3264, 2448)
&gt; digikam.general: Removing old entries ()
&gt; 
&gt; Thread 13957 &quot;Thread (pooled)&quot; received signal SIGSEGV, Segmentation fault.
&gt; [Switching to Thread 0x7fffa51ee700 (LWP 20947)]
&gt; 0x0000000000000000 in ?? ()
&gt; (gdb) bt
&gt; #0  0x0000000000000000 in ?? ()
&gt; #1  0x00007ffff7966b0f in Digikam::PreviewLoadingTask::execute (this=0x292ea70) at /tmp/tmp.sIBLW3QdU7/digikam/core/libs/threadimageio/preview/previewtask.cpp:405
&gt; #2  0x00007ffff797cafe in Digikam::LoadSaveThread::run (this=0x3ac4dd0) at /tmp/tmp.sIBLW3QdU7/digikam/core/libs/threadimageio/fileio/loadsavethread.cpp:133
&gt; #3  0x00007ffff799d1de in Digikam::DynamicThread::Private::run (this=0x26c1940) at /tmp/tmp.sIBLW3QdU7/digikam/core/libs/threads/dynamicthread.cpp:183
&gt; #4  0x00007ffff4b1b7d2 in ?? () from /nix/store/683732s7dq6bxrl267lcadl5lvn6i4nh-qtbase-5.12.0/lib/libQt5Core.so.5
&gt; #5  0x00007ffff4b17062 in ?? () from /nix/store/683732s7dq6bxrl267lcadl5lvn6i4nh-qtbase-5.12.0/lib/libQt5Core.so.5
&gt; #6  0x00007ffff44e2ef7 in start_thread () from /nix/store/iykxb0bmfjmi7s53kfg6pjbfpd8jmza6-glibc-2.27/lib/libpthread.so.0
&gt; #7  0x00007ffff441822f in clone () from /nix/store/iykxb0bmfjmi7s53kfg6pjbfpd8jmza6-glibc-2.27/lib/libc.so.6
&gt; (gdb)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1892245</commentid>
    <comment_count>246</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2019-11-18 19:50:36 +0000</bug_when>
    <thetext>Git commit d7b1ea9ccdd65d9a7d85be0ed035b33f0f7d5d31 by Maik Qualmann.
Committed on 18/11/2019 at 19:49.
Pushed by mqualmann into branch &apos;master&apos;.

prevent to access a QList simultaneously from multiple threads

M  +10   -3    core/libs/threadimageio/fileio/loadsavetask.cpp
M  +11   -3    core/libs/threadimageio/preview/previewtask.cpp

https://invent.kde.org/kde/digikam/commit/d7b1ea9ccdd65d9a7d85be0ed035b33f0f7d5d31</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1892300</commentid>
    <comment_count>247</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2019-11-19 07:11:02 +0000</bug_when>
    <thetext>Git commit ba2893d27dd4542034f90b56bc4d75f1cb727d42 by Maik Qualmann.
Committed on 19/11/2019 at 07:10.
Pushed by mqualmann into branch &apos;master&apos;.

fix wrong DImgLoaderObserver in postProcess()

M  +3    -3    core/libs/threadimageio/fileio/loadsavetask.cpp
M  +1    -1    core/libs/threadimageio/fileio/loadsavetask.h
M  +1    -1    core/libs/threadimageio/preview/previewtask.cpp
M  +2    -2    core/libs/threadimageio/thumb/thumbnailtask.cpp
M  +2    -2    core/libs/threadimageio/thumb/thumbnailtask.h

https://invent.kde.org/kde/digikam/commit/ba2893d27dd4542034f90b56bc4d75f1cb727d42</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1892408</commentid>
    <comment_count>248</comment_count>
    <who name="">timokau</who>
    <bug_when>2019-11-19 16:38:07 +0000</bug_when>
    <thetext>I cannot start face detection with ba2893d27dd4542034f90b56bc4d75f1cb727d42. It gives me the error:

Face recognition is aborted, because there are no identities to recognize. Please add new identities.

Even though I&apos;ve selected face detection, not recognition.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1892426</commentid>
    <comment_count>249</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2019-11-19 16:50:32 +0000</bug_when>
    <thetext>Yes, my mistake is with an empty face database. You would have to add a face by name manually. I fix it...

Maik</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1892444</commentid>
    <comment_count>250</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2019-11-19 17:36:31 +0000</bug_when>
    <thetext>Git commit fe0020243fa27001b5daf575fb894663fdbe534b by Maik Qualmann.
Committed on 19/11/2019 at 17:35.
Pushed by mqualmann into branch &apos;master&apos;.

check only for empty identities for face recognition

M  +5    -2    core/utilities/facemanagement/widgets/facescandialog.cpp

https://invent.kde.org/kde/digikam/commit/fe0020243fa27001b5daf575fb894663fdbe534b</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1892503</commentid>
    <comment_count>251</comment_count>
    <who name="">timokau</who>
    <bug_when>2019-11-19 23:30:27 +0000</bug_when>
    <thetext>With fe0020243fa27001b5daf575fb894663fdbe534b:

&gt; digikam.general: Found 0 faces in &quot;IMG_20171125_194502.jpg&quot; QSize(3120, 4208) QSize(3120, 4208)
&gt; digikam.general: Removing old entries ()
&gt; digikam.general: Try to get preview from &quot;/tmp/tmp.LFZ59UShRA/Pictures/p/android_pics/DCIM/Camera/IMG_20171126_004126.jpg&quot;
&gt; digikam.general: Preview quality:  1
&gt; digikam.dimg: &quot;/tmp/tmp.LFZ59UShRA/Pictures/p/android_pics/DCIM/Camera/IMG_20171126_004126.jpg&quot; : &quot;JPEG&quot; file identified
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.general: Try to get preview from &quot;/tmp/tmp.LFZ59UShRA/Pictures/p/android_pics/DCIM/Camera/IMG_20171126_112717.jpg&quot;
&gt; digikam.general: Preview quality:  1
&gt; digikam.dimg: &quot;/tmp/tmp.LFZ59UShRA/Pictures/p/android_pics/DCIM/Camera/IMG_20171126_112717.jpg&quot; : &quot;JPEG&quot; file identified
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.general: Using  4  CPU core to run threads
&gt; digikam.metaengine: Exif color-space tag is sRGB. Using default sRGB ICC profile.
&gt; digikam.general: Found 0 faces in &quot;IMG_20171125_194503.jpg&quot; QSize(3120, 4208) QSize(3120, 4208)
&gt; digikam.general: Removing old entries ()
&gt; digikam.general: Found 0 faces in &quot;IMG_20171125_211335.jpg&quot; QSize(3120, 4208) QSize(3120, 4208)
&gt; digikam.general: Removing old entries ()
&gt; digikam.general: Found 0 faces in &quot;IMG_20171125_211336.jpg&quot; QSize(3120, 4208) QSize(3120, 4208)
&gt; digikam.general: Removing old entries ()
&gt; [New Thread 0x7fff267fc700 (LWP 27668)]
&gt; 
&gt; Thread 786 &quot;Thread (pooled)&quot; received signal SIGSEGV, Segmentation fault.
&gt; [Switching to Thread 0x7fff38f54700 (LWP 14401)]
&gt; 0x00007ffff7988637 in Digikam::LoadingTask::progressInfo (this=0x363d540, img=0x363d728, progress=0.75)
&gt;     at /tmp/tmp.LFZ59UShRA/digikam/core/libs/threadimageio/fileio/loadsavetask.cpp:65
&gt; 65              if (m_thread &amp;&amp; m_thread-&gt;querySendNotifyEvent())
&gt; (gdb) bt
&gt; #0  0x00007ffff7988637 in Digikam::LoadingTask::progressInfo (this=0x363d540, img=0x363d728, progress=0.75)
&gt;     at /tmp/tmp.LFZ59UShRA/digikam/core/libs/threadimageio/fileio/loadsavetask.cpp:65
&gt; #1  0x00007fffc28d7a40 in DigikamJPEGDImgPlugin::DImgJPEGLoader::load (this=0x7fff303bb0b0, filePath=..., observer=0x363d550)
&gt;     at /tmp/tmp.LFZ59UShRA/digikam/core/dplugins/dimg/jpeg/dimgjpegloader_load.cpp:434
&gt; #2  0x00007ffff78a0adc in Digikam::DImg::load (this=this@entry=0x363d728, filePath=..., loadFlagsInt=loadFlagsInt@entry=63,
&gt;     observer=observer@entry=0x363d550, rawDecodingSettings=...) at /tmp/tmp.LFZ59UShRA/digikam/core/libs/dimg/dimg_fileio.cpp:138
&gt; #3  0x00007ffff78a1d70 in Digikam::DImg::load (this=this@entry=0x363d728, filePath=..., observer=observer@entry=0x363d550,
&gt;     rawDecodingSettings=...) at /tmp/tmp.LFZ59UShRA/digikam/core/libs/dimg/dimg_fileio.cpp:63
&gt; #4  0x00007ffff796695c in Digikam::PreviewLoadingTask::execute (this=0x363d540)
&gt;     at /tmp/tmp.LFZ59UShRA/digikam/core/libs/threadimageio/preview/previewtask.cpp:286
&gt; #5  0x00007ffff797cbce in Digikam::LoadSaveThread::run (this=0x2df45f0)
&gt;     at /tmp/tmp.LFZ59UShRA/digikam/core/libs/threadimageio/fileio/loadsavethread.cpp:133
&gt; #6  0x00007ffff799d30e in Digikam::DynamicThread::Private::run (this=0x3247510)
&gt;     at /tmp/tmp.LFZ59UShRA/digikam/core/libs/threads/dynamicthread.cpp:183
&gt; #7  0x00007ffff4b1a7d2 in ?? () from /nix/store/683732s7dq6bxrl267lcadl5lvn6i4nh-qtbase-5.12.0/lib/libQt5Core.so.5
&gt; #8  0x00007ffff4b16062 in ?? () from /nix/store/683732s7dq6bxrl267lcadl5lvn6i4nh-qtbase-5.12.0/lib/libQt5Core.so.5
&gt; #9  0x00007ffff44e1ef7 in start_thread () from /nix/store/iykxb0bmfjmi7s53kfg6pjbfpd8jmza6-glibc-2.27/lib/libpthread.so.0
&gt; #10 0x00007ffff441722f in clone () from /nix/store/iykxb0bmfjmi7s53kfg6pjbfpd8jmza6-glibc-2.27/lib/libc.so.6
&gt; (gdb)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1892522</commentid>
    <comment_count>252</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2019-11-20 06:45:51 +0000</bug_when>
    <thetext>Git commit d235ea6eff1cff7a8240fd9ac1a67ce441aae940 by Maik Qualmann.
Committed on 20/11/2019 at 06:44.
Pushed by mqualmann into branch &apos;master&apos;.

do not receive progress info in postProcess()

M  +3    -13   core/libs/threadimageio/fileio/loadsavetask.cpp
M  +1    -1    core/libs/threadimageio/fileio/loadsavetask.h
M  +1    -12   core/libs/threadimageio/preview/previewtask.cpp
M  +2    -2    core/libs/threadimageio/thumb/thumbnailtask.cpp
M  +2    -2    core/libs/threadimageio/thumb/thumbnailtask.h

https://invent.kde.org/kde/digikam/commit/d235ea6eff1cff7a8240fd9ac1a67ce441aae940</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1892672</commentid>
    <comment_count>253</comment_count>
    <who name="">timokau</who>
    <bug_when>2019-11-20 22:57:34 +0000</bug_when>
    <thetext>With 6845671c7e6b60e337fae81b097d14bb32e0b6e8:

&gt; digikam.general: Try to get preview from &quot;/tmp/tmp.oF2HC2AYd3/Pictures/p/android_pics/DCIM/Camera/IMG_20171221_153250.jpg&quot;
&gt; digikam.general: Preview quality:  1
&gt; digikam.dimg: &quot;/tmp/tmp.oF2HC2AYd3/Pictures/p/android_pics/DCIM/Camera/IMG_20171221_153250.jpg&quot; : &quot;JPEG&quot; file identified
&gt; digikam.metaengine: Exif color-space tag is sRGB. Using default sRGB ICC profile.
&gt; digikam.general: Try to get preview from &quot;/tmp/tmp.oF2HC2AYd3/Pictures/p/android_pics/DCIM/Camera/IMG_20171221_153251.jpg&quot;
&gt; digikam.general: Preview quality:  1
&gt; digikam.dimg: &quot;/tmp/tmp.oF2HC2AYd3/Pictures/p/android_pics/DCIM/Camera/IMG_20171221_153251.jpg&quot; : &quot;JPEG&quot; file identified
&gt; digikam.facesengine: Good rect =  QRect(179,146 35x47) , conf =  0.622759
&gt; digikam.general: Found 1 faces in &quot;IMG_20171221_125943.jpg&quot; QSize(3120, 4208) QSize(3120, 4208)
&gt; digikam.general: Removing old entries ()
&gt; digikam.metaengine: Exif color-space tag is sRGB. Using default sRGB ICC profile.
&gt; digikam.general: Try to get preview from &quot;/tmp/tmp.oF2HC2AYd3/Pictures/p/android_pics/DCIM/Camera/IMG_20171221_153449.jpg&quot;
&gt; digikam.general: Preview quality:  1
&gt; digikam.dimg: &quot;/tmp/tmp.oF2HC2AYd3/Pictures/p/android_pics/DCIM/Camera/IMG_20171221_153449.jpg&quot; : &quot;JPEG&quot; file identified
&gt; digikam.metaengine: Exif color-space tag is sRGB. Using default sRGB ICC profile.
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.general: Try to get preview from &quot;/tmp/tmp.oF2HC2AYd3/Pictures/p/android_pics/DCIM/Camera/IMG_20171221_153456.jpg&quot;
&gt; digikam.general: Preview quality:  1
&gt; digikam.dimg: &quot;/tmp/tmp.oF2HC2AYd3/Pictures/p/android_pics/DCIM/Camera/IMG_20171221_153456.jpg&quot; : &quot;JPEG&quot; file identified
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; 
&gt; Thread 46 &quot;Thread (pooled)&quot; received signal SIGSEGV, Segmentation fault.
&gt; [Switching to Thread 0x7fff427fc700 (LWP 739)]
&gt; 0x00007ffff43c3626 in __memmove_sse2_unaligned_erms () from /nix/store/iykxb0bmfjmi7s53kfg6pjbfpd8jmza6-glibc-2.27/lib/libc.so.6
&gt; (gdb) bt
&gt; #0  0x00007ffff43c3626 in __memmove_sse2_unaligned_erms () from /nix/store/iykxb0bmfjmi7s53kfg6pjbfpd8jmza6-glibc-2.27/lib/libc.so.6
&gt; #1  0x00007ffff789f323 in memcpy (__len=&lt;optimized out&gt;, __src=&lt;optimized out&gt;, __dest=&lt;optimized out&gt;) at /nix/store/bniand9afisrgrsfi7kr093334iv3ibv-glibc-2.27-dev/include/bits/string_fortified.h:34
&gt; #2  Digikam::DImg::detach (this=0x799fd8) at /tmp/tmp.oF2HC2AYd3/digikam/core/libs/dimg/dimg_data.cpp:67
&gt; #3  0x00007ffff7966787 in Digikam::PreviewLoadingTask::execute (this=0x799df0) at /tmp/tmp.oF2HC2AYd3/digikam/core/libs/threadimageio/preview/previewtask.cpp:380
&gt; #4  0x00007ffff797cb1e in Digikam::LoadSaveThread::run (this=0x3100e60) at /tmp/tmp.oF2HC2AYd3/digikam/core/libs/threadimageio/fileio/loadsavethread.cpp:133
&gt; #5  0x00007ffff799d17e in Digikam::DynamicThread::Private::run (this=0x3466ba0) at /tmp/tmp.oF2HC2AYd3/digikam/core/libs/threads/dynamicthread.cpp:183
&gt; #6  0x00007ffff4b1a7d2 in ?? () from /nix/store/683732s7dq6bxrl267lcadl5lvn6i4nh-qtbase-5.12.0/lib/libQt5Core.so.5
&gt; #7  0x00007ffff4b16062 in ?? () from /nix/store/683732s7dq6bxrl267lcadl5lvn6i4nh-qtbase-5.12.0/lib/libQt5Core.so.5
&gt; #8  0x00007ffff44e1ef7 in start_thread () from /nix/store/iykxb0bmfjmi7s53kfg6pjbfpd8jmza6-glibc-2.27/lib/libpthread.so.0
&gt; #9  0x00007ffff441722f in clone () from /nix/store/iykxb0bmfjmi7s53kfg6pjbfpd8jmza6-glibc-2.27/lib/libc.so.6
&gt; (gdb)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1892684</commentid>
    <comment_count>254</comment_count>
    <who name="">caulier.gilles</who>
    <bug_when>2019-11-21 03:11:06 +0000</bug_when>
    <thetext>Maik,

When i compile with Clang static ananlyzer 8.0 under Mageia 7.1 i can see that:


In file included from /home/gilles/Documents/7.x/core/libs/dimg/dimg_data.cpp:26:
In file included from /home/gilles/Documents/7.x/core/libs/dimg/dimg_p.h:52:
In file included from /usr/lib64/qt5/include/QtCore/QSharedData:1:
/usr/lib64/qt5/include/QtCore/qshareddata.h:161:41: warning: Use of memory after it is freed
    inline const T *constData() const { return d; }
                                        ^~~~~~~~
1 warning generated.

These king of report is dropped from complete report published in digikam.org/reports/ as it&apos;s outside of digiKam space, but this can be a way to explore...

Gilles</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1892716</commentid>
    <comment_count>255</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2019-11-21 07:44:15 +0000</bug_when>
    <thetext>I think that in this case we still have 2 references to QSharedData. It crashes in memcpy(). We do not check the memory allocation, whether we have received it. Timokau, what is the memory usage during face detection?

Maik</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1892717</commentid>
    <comment_count>256</comment_count>
    <who name="">timokau</who>
    <bug_when>2019-11-21 09:31:56 +0000</bug_when>
    <thetext>Memory usage is pretty high. I have 8G of ram and swap space is still needed for the scan to complete. It seems to me that the crash occurs more often when I use the system otherwise at the same time, so it may very well be that it has something to do with load.

But for a memcpy to fail, both physical ram and swap would have to be fully exhausted right?

Another data point is that IIRC I reproduced the crash on my laptop too at some point. The laptop has 16G of RAM.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1892799</commentid>
    <comment_count>257</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2019-11-21 16:59:22 +0000</bug_when>
    <thetext>Git commit ea529419b90d54ce5bc6052a14ec2c23c5f79b1f by Maik Qualmann.
Committed on 21/11/2019 at 16:58.
Pushed by mqualmann into branch &apos;master&apos;.

various optimization for image loading

M  +4    -5    core/libs/dimg/dimg_data.cpp
M  +1    -1    core/libs/threadimageio/fileio/loadingcache.cpp
M  +1    -7    core/libs/threadimageio/preview/previewtask.cpp

https://invent.kde.org/kde/digikam/commit/ea529419b90d54ce5bc6052a14ec2c23c5f79b1f</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1892842</commentid>
    <comment_count>258</comment_count>
    <who name="">timokau</who>
    <bug_when>2019-11-21 21:30:32 +0000</bug_when>
    <thetext>I kept a loose eye on my the ram usage during this run, seemed to hover around ~5-6G actual memory and 1-2G swap. The system definitely didn&apos;t OOM. I was using it at the same time, and I should&apos;ve noticed that.  With 7f0595ab85f3bf305876771e96671da3dce7122e:

&gt; Gigikam.metaengine: Exif color-space tag is sRGB. Using default sRGB ICC profile.
&gt; digikam.general: Try to get preview from &quot;/tmp/tmp.tlWfpH3zHy/Pictures/p/path/file.JPG&quot;
&gt; digikam.general: Preview quality:  1
&gt; digikam.dimg: &quot;/tmp/tmp.tlWfpH3zHy/Pictures/p/path/file.JPG&quot; : &quot;JPEG&quot; file identified
&gt; digikam.metaengine: Exif color-space tag is sRGB. Using default sRGB ICC profile.
&gt; digikam.general: Try to get preview from &quot;/tmp/tmp.tlWfpH3zHy/Pictures/p/path/file.JPG&quot;
&gt; digikam.general: Preview quality:  1
&gt; digikam.dimg: &quot;/tmp/tmp.tlWfpH3zHy/Pictures/p/path/file.JPG&quot; : &quot;JPEG&quot; file identified
&gt; digikam.metaengine: Exif color-space tag is sRGB. Using default sRGB ICC profile.
&gt; digikam.general: Try to get preview from &quot;/tmp/tmp.tlWfpH3zHy/Pictures/p/path/file.JPG&quot;
&gt; digikam.general: Preview quality:  1
&gt; digikam.dimg: &quot;/tmp/tmp.tlWfpH3zHy/Pictures/p/path/file.JPG&quot; : &quot;JPEG&quot; file identified
&gt; [New Thread 0x7fff187d2700 (LWP 23549)]
&gt; 
&gt; Thread 31 &quot;Thread (pooled)&quot; received signal SIGSEGV, Segmentation fault.
&gt; [Switching to Thread 0x7fffa51ee700 (LWP 28349)]
&gt; 0x00007ffff7988567 in Digikam::LoadingTask::progressInfo (this=0x4993e60, img=0x4994048, progress=0.5) at /tmp/tmp.tlWfpH3zHy/digikam/core/libs/threadimageio/fileio/loadsavetask.cpp:65
&gt; 65              if (m_thread &amp;&amp; m_thread-&gt;querySendNotifyEvent())
&gt; (gdb) bt
&gt; #0  0x00007ffff7988567 in Digikam::LoadingTask::progressInfo (this=0x4993e60, img=0x4994048, progress=0.5)
&gt;     at /tmp/tmp.tlWfpH3zHy/digikam/core/libs/threadimageio/fileio/loadsavetask.cpp:65
&gt; #1  0x00007fffb2098a40 in DigikamJPEGDImgPlugin::DImgJPEGLoader::load (this=0x7fff48325680, filePath=..., observer=0x4993e70)
&gt;     at /tmp/tmp.tlWfpH3zHy/digikam/core/dplugins/dimg/jpeg/dimgjpegloader_load.cpp:434
&gt; #2  0x00007ffff78a0aec in Digikam::DImg::load (this=this@entry=0x4994048, filePath=..., loadFlagsInt=loadFlagsInt@entry=63,
&gt;     observer=observer@entry=0x4993e70, rawDecodingSettings=...) at /tmp/tmp.tlWfpH3zHy/digikam/core/libs/dimg/dimg_fileio.cpp:138
&gt; #3  0x00007ffff78a1d80 in Digikam::DImg::load (this=this@entry=0x4994048, filePath=..., observer=observer@entry=0x4993e70,
&gt;     rawDecodingSettings=...) at /tmp/tmp.tlWfpH3zHy/digikam/core/libs/dimg/dimg_fileio.cpp:63
&gt; #4  0x00007ffff7966900 in Digikam::PreviewLoadingTask::execute (this=0x4993e60)
&gt;     at /tmp/tmp.tlWfpH3zHy/digikam/core/libs/threadimageio/preview/previewtask.cpp:286
&gt; #5  0x00007ffff797cafe in Digikam::LoadSaveThread::run (this=0xf4a270)
&gt;     at /tmp/tmp.tlWfpH3zHy/digikam/core/libs/threadimageio/fileio/loadsavethread.cpp:133
&gt; #6  0x00007ffff799d15e in Digikam::DynamicThread::Private::run (this=0x2b876d0)
&gt;     at /tmp/tmp.tlWfpH3zHy/digikam/core/libs/threads/dynamicthread.cpp:183
&gt; #7  0x00007ffff4b1a7d2 in ?? () from /nix/store/683732s7dq6bxrl267lcadl5lvn6i4nh-qtbase-5.12.0/lib/libQt5Core.so.5
&gt; #8  0x00007ffff4b16062 in ?? () from /nix/store/683732s7dq6bxrl267lcadl5lvn6i4nh-qtbase-5.12.0/lib/libQt5Core.so.5
&gt; #9  0x00007ffff44e1ef7 in start_thread () from /nix/store/iykxb0bmfjmi7s53kfg6pjbfpd8jmza6-glibc-2.27/lib/libpthread.so.0
&gt; #10 0x00007ffff441722f in clone () from /nix/store/iykxb0bmfjmi7s53kfg6pjbfpd8jmza6-glibc-2.27/lib/libc.so.6
&gt; (gdb)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1892844</commentid>
    <comment_count>259</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2019-11-21 22:11:05 +0000</bug_when>
    <thetext>Git commit c31a8b4e3650fe05392e01c2388f2f2847a191b4 by Maik Qualmann.
Committed on 21/11/2019 at 22:09.
Pushed by mqualmann into branch &apos;master&apos;.

for a test we disable the QCache

M  +2    -2    core/libs/threadimageio/preview/previewtask.cpp

https://invent.kde.org/kde/digikam/commit/c31a8b4e3650fe05392e01c2388f2f2847a191b4</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1892845</commentid>
    <comment_count>260</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2019-11-21 22:12:41 +0000</bug_when>
    <thetext>It is only interested in what has changed in the memory usage.

Maik</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1893214</commentid>
    <comment_count>261</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2019-11-24 18:35:42 +0000</bug_when>
    <thetext>Post of commits with CCBUGS seems broken. Please test this experiment:

https://invent.kde.org/kde/digikam/commit/7c50ae256ee7eb59e4c00dc101d7d7339a420ab9

Maik</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1893438</commentid>
    <comment_count>262</comment_count>
    <who name="">timokau</who>
    <bug_when>2019-11-25 23:50:34 +0000</bug_when>
    <thetext>I tracked the memory usage with psrecord (attached). You can easily see the point where it crashed, when the CPU usage dropped to 0 and the memory usage flattened out.
With b50ee49d2455c936f02178d59389669e0796e506:

&gt; digikam.database: Search query:
&gt;  &quot;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
&gt;       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 ( (ImageTagPropertie
&gt; s.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=?  ) )  );&quot;
&gt;  (QVariant(int, 4), QVariant(int, 4), QVariant(QString, &quot;autodetectedPerson&quot;), QVariant(int, 4), QVariant(int, 4), QVariant(QString, &quot;autodetectedFace&quot;), QVariant(int, 4), QVariant(int, 4), QVariant(QString, &quot;tagRegion&quot;))
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.general: Try to get preview from &quot;/tmp/tmp.m1S6vaoNjT/Pictures/p/images/new-pics/DCIM/Camera/IMG_20171226_173931.jpg&quot;
&gt; digikam.general: Preview quality:  1
&gt; digikam.dimg: &quot;/tmp/tmp.m1S6vaoNjT/Pictures/p/images/new-pics/DCIM/Camera/IMG_20171226_173931.jpg&quot; : &quot;JPEG&quot; file identified
&gt; digikam.database: Search result: 5669
&gt; digikam.general: Cancel Main Thread
&gt; digikam.facesengine: Good rect =  QRect(10,116 63x74) , conf =  0.999788
&gt; digikam.general: Found 1 faces in &quot;IMG_20171224_155639.jpg&quot; QSize(2592, 1944) QSize(2592, 1944)
&gt; digikam.general: Removing old entries ()
&gt; digikam.general: One job is done
&gt; digikam.general: Cancel Main Thread
&gt; digikam.general: Found 0 faces in &quot;IMG_20171224_155649.jpg&quot; QSize(3120, 4208) QSize(3120, 4208)
&gt; digikam.general: Removing old entries ()
&gt; [Thread 0x7fff29a91700 (LWP 11815) exited]
&gt; [Thread 0x7fff28a8f700 (LWP 11814) exited]
&gt; 
&gt; Thread 171 &quot;Thread (pooled)&quot; received signal SIGSEGV, Segmentation fault.
&gt; [Switching to Thread 0x7fff2a292700 (LWP 29547)]
&gt; 0x00007ffff43c33cf in __memmove_sse2_unaligned_erms () from /nix/store/iykxb0bmfjmi7s53kfg6pjbfpd8jmza6-glibc-2.27/lib/libc.so.6
&gt; (gdb) bt
&gt; #0  0x00007ffff43c33cf in __memmove_sse2_unaligned_erms () from /nix/store/iykxb0bmfjmi7s53kfg6pjbfpd8jmza6-glibc-2.27/lib/libc.so.6
&gt; #1  0x00007ffff78c7d67 in std::char_traits&lt;char&gt;::copy (__n=32, __s2=0x4 &lt;error: Cannot access memory at address 0x4&gt;, __s1=&lt;optimized out&gt;)
&gt;     at /nix/store/wr5dlcw1asw8dwgm4bwjmga8f52m5lfx-gcc-7.4.0/include/c++/7.4.0/bits/char_traits.h:350
&gt; #2  std::__cxx11::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt;::_S_copy (__n=32,
&gt;     __s=0x4 &lt;error: Cannot access memory at address 0x4&gt;, __d=&lt;optimized out&gt;)
&gt;     at /nix/store/wr5dlcw1asw8dwgm4bwjmga8f52m5lfx-gcc-7.4.0/include/c++/7.4.0/bits/basic_string.h:340
&gt; #3  std::__cxx11::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt;::_S_copy_chars (__k2=&lt;optimized out&gt;,
&gt;     __k1=0x4 &lt;error: Cannot access memory at address 0x4&gt;, __p=&lt;optimized out&gt;)
&gt;     at /nix/store/wr5dlcw1asw8dwgm4bwjmga8f52m5lfx-gcc-7.4.0/include/c++/7.4.0/bits/basic_string.h:382
&gt; #4  std::__cxx11::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt;::_M_construct&lt;char*&gt; (this=this@entry=0x7fff08086c88,
&gt;     __beg=0x4 &lt;error: Cannot access memory at address 0x4&gt;, __end=&lt;optimized out&gt;)
&gt;     at /nix/store/wr5dlcw1asw8dwgm4bwjmga8f52m5lfx-gcc-7.4.0/include/c++/7.4.0/bits/basic_string.tcc:225
&gt; #5  0x00007ffff78c83dd in std::__cxx11::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt;::_M_construct_aux&lt;char*&gt; (
&gt;     __end=&lt;optimized out&gt;, __beg=&lt;optimized out&gt;, this=0x7fff08086c88)
&gt;     at /nix/store/wr5dlcw1asw8dwgm4bwjmga8f52m5lfx-gcc-7.4.0/include/c++/7.4.0/bits/basic_string.h:236
&gt; #6  std::__cxx11::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt;::_M_construct&lt;char*&gt; (__end=&lt;optimized out&gt;,
&gt;     __beg=&lt;optimized out&gt;, this=0x7fff08086c88) at /nix/store/wr5dlcw1asw8dwgm4bwjmga8f52m5lfx-gcc-7.4.0/include/c++/7.4.0/bits/basic_string.h:255
&gt; #7  std::__cxx11::basic_string&lt;char, std::char_traits&lt;char&gt;, std::allocator&lt;char&gt; &gt;::basic_string (__str=..., this=0x7fff08086c88)
&gt;     at /nix/store/wr5dlcw1asw8dwgm4bwjmga8f52m5lfx-gcc-7.4.0/include/c++/7.4.0/bits/basic_string.h:440
&gt; #8  Digikam::MetaEngineData::Private::Private (this=0x7fff08086c80)
&gt;     at /tmp/tmp.m1S6vaoNjT/digikam/core/libs/metadataengine/engine/metaengine_data_p.h:34
&gt; #9  QSharedDataPointer&lt;Digikam::MetaEngineData::Private&gt;::clone (this=0x7fff0829adb0)
&gt;     at /nix/store/hy0z060pmjwrdrbb0qrii7hnwif8cz1y-qtbase-5.12.0-dev/include/QtCore/qshareddata.h:253
&gt; #10 QSharedDataPointer&lt;Digikam::MetaEngineData::Private&gt;::detach_helper (this=this@entry=0x7fff0829adb0)
&gt;     at /nix/store/hy0z060pmjwrdrbb0qrii7hnwif8cz1y-qtbase-5.12.0-dev/include/QtCore/qshareddata.h:259
&gt; #11 0x00007ffff78cd22d in QSharedDataPointer&lt;Digikam::MetaEngineData::Private&gt;::detach (this=0x7fff0829adb0)
&gt;     at /nix/store/hy0z060pmjwrdrbb0qrii7hnwif8cz1y-qtbase-5.12.0-dev/include/QtCore/qshareddata.h:74
&gt; #12 QSharedDataPointer&lt;Digikam::MetaEngineData::Private&gt;::data (this=0x7fff0829adb0)
&gt;     at /nix/store/hy0z060pmjwrdrbb0qrii7hnwif8cz1y-qtbase-5.12.0-dev/include/QtCore/qshareddata.h:81
&gt; #13 Digikam::MetaEngine::Private::exifMetadata (this=0x7fff0829ad80)
&gt;     at /tmp/tmp.m1S6vaoNjT/digikam/core/libs/metadataengine/engine/metaengine_p.cpp:104
&gt; #14 0x00007ffff78d39d8 in Digikam::MetaEngine::getExifTagData (this=this@entry=0x7fff2a290db0,
&gt;     exifTagName=exifTagName@entry=0x7ffff7d94f5d &quot;Exif.Image.InterColorProfile&quot;)
&gt;     at /tmp/tmp.m1S6vaoNjT/digikam/core/libs/metadataengine/engine/metaengine_exif.cpp:686
&gt; #15 0x00007ffff7910dd4 in Digikam::DMetadata::getIccProfile (this=this@entry=0x7fff2a290db0)
&gt;     at /tmp/tmp.m1S6vaoNjT/digikam/core/libs/metadataengine/dmetadata/dmetadata_exif.cpp:85
&gt; #16 0x00007ffff7766def in Digikam::DImgLoader::checkExifWorkingColorSpace (this=this@entry=0x7fff0806b5a0)
&gt;     at /tmp/tmp.m1S6vaoNjT/digikam/core/libs/dimg/loaders/dimgloader.cpp:243
&gt; #17 0x00007fffc28d8486 in DigikamJPEGDImgPlugin::DImgJPEGLoader::load (this=0x7fff0806b5a0, filePath=..., observer=0x41ec540)
&gt;     at /tmp/tmp.m1S6vaoNjT/digikam/core/dplugins/dimg/jpeg/dimgjpegloader_load.cpp:601
&gt; #18 0x00007ffff78a0b6c in Digikam::DImg::load (this=this@entry=0x41ec718, filePath=..., loadFlagsInt=loadFlagsInt@entry=63,
&gt;     observer=observer@entry=0x41ec540, rawDecodingSettings=...) at /tmp/tmp.m1S6vaoNjT/digikam/core/libs/dimg/dimg_fileio.cpp:138
&gt; #19 0x00007ffff78a1e00 in Digikam::DImg::load (this=this@entry=0x41ec718, filePath=..., observer=observer@entry=0x41ec540, rawDecodingSettings=...)
&gt;     at /tmp/tmp.m1S6vaoNjT/digikam/core/libs/dimg/dimg_fileio.cpp:63
&gt; #20 0x00007ffff7966a50 in Digikam::PreviewLoadingTask::execute (this=0x41ec530)
&gt;     at /tmp/tmp.m1S6vaoNjT/digikam/core/libs/threadimageio/preview/previewtask.cpp:286
&gt; #21 0x00007ffff797cc4e in Digikam::LoadSaveThread::run (this=0x7fffd80092e0)
&gt;     at /tmp/tmp.m1S6vaoNjT/digikam/core/libs/threadimageio/fileio/loadsavethread.cpp:133
&gt; #22 0x00007ffff799d2ae in Digikam::DynamicThread::Private::run (this=0x2e7c7e0)
&gt;     at /tmp/tmp.m1S6vaoNjT/digikam/core/libs/threads/dynamicthread.cpp:183
&gt; #23 0x00007ffff4b1a7d2 in ?? () from /nix/store/683732s7dq6bxrl267lcadl5lvn6i4nh-qtbase-5.12.0/lib/libQt5Core.so.5
&gt; #24 0x00007ffff4b16062 in ?? () from /nix/store/683732s7dq6bxrl267lcadl5lvn6i4nh-qtbase-5.12.0/lib/libQt5Core.so.5
&gt; #25 0x00007ffff44e1ef7 in start_thread () from /nix/store/iykxb0bmfjmi7s53kfg6pjbfpd8jmza6-glibc-2.27/lib/libpthread.so.0
&gt; #26 0x00007ffff441722f in clone () from /nix/store/iykxb0bmfjmi7s53kfg6pjbfpd8jmza6-glibc-2.27/lib/libc.so.6
&gt; (gdb)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1893439</commentid>
    <comment_count>263</comment_count>
      <attachid>124119</attachid>
    <who name="">timokau</who>
    <bug_when>2019-11-25 23:51:09 +0000</bug_when>
    <thetext>Created attachment 124119
digikam resource usage with b50ee49d2455c936f02178d59389669e0796e506</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1893452</commentid>
    <comment_count>264</comment_count>
    <who name="">caulier.gilles</who>
    <bug_when>2019-11-26 03:27:49 +0000</bug_when>
    <thetext>The backtrace from comment #262 is very interresting :

&gt; #8  Digikam::MetaEngineData::Private::Private (this=0x7fff08086c80)
&gt;     at /tmp/tmp.m1S6vaoNjT/digikam/core/libs/metadataengine/engine/metaengine_data_p.h:34
&gt; #9  QSharedDataPointer&lt;Digikam::MetaEngineData::Private&gt;::clone (this=0x7fff0829adb0)
&gt;     at /nix/store/hy0z060pmjwrdrbb0qrii7hnwif8cz1y-qtbase-5.12.0-dev/include/QtCore/qshareddata.h:253
&gt; #10 QSharedDataPointer&lt;Digikam::MetaEngineData::Private&gt;::detach_helper (this=this@entry=0x7fff0829adb0)
&gt;     at /nix/store/hy0z060pmjwrdrbb0qrii7hnwif8cz1y-qtbase-5.12.0-dev/include/QtCore/qshareddata.h:259
&gt; #11 0x00007ffff78cd22d in QSharedDataPointer&lt;Digikam::MetaEngineData::Private&gt;::detach (this=0x7fff0829adb0)
&gt;     at /nix/store/hy0z060pmjwrdrbb0qrii7hnwif8cz1y-qtbase-5.12.0-dev/include/QtCore/qshareddata.h:74
&gt; #12 QSharedDataPointer&lt;Digikam::MetaEngineData::Private&gt;::data (this=0x7fff0829adb0)
&gt;     at /nix/store/hy0z060pmjwrdrbb0qrii7hnwif8cz1y-qtbase-5.12.0-dev/include/QtCore/qshareddata.h:81
&gt; #13 Digikam::MetaEngine::Private::exifMetadata (this=0x7fff0829ad80)
&gt;     at /tmp/tmp.m1S6vaoNjT/digikam/core/libs/metadataengine/engine/metaengine_p.cpp:104
&gt; #14 0x00007ffff78d39d8 in Digikam::MetaEngine::getExifTagData (this=this@entry=0x7fff2a290db0,
&gt;     exifTagName=exifTagName@entry=0x7ffff7d94f5d &quot;Exif.Image.InterColorProfile&quot;)

It&apos;s relevant of QSharedData C++ clone operation from the private container of MetaEngineDatata private container. This class do not have an overloaded  clone method, default one is used instead.

Coverity Report static analyzer start to tip to implement this kind of C++ operator with data containers (not this one). It&apos;s not a simple task and an obscur implementation to do. I tried all the way explained on the web to fix the reports from Coverity without success.

Gilles Caulier</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1893483</commentid>
    <comment_count>265</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2019-11-26 08:27:17 +0000</bug_when>
    <thetext>Yes, I think the crash is clear. We use a QSharedDataPointer, read access is shared, write access calls detach(). I do not think he is able to correctly clone the Exiv2::ExifData container. We have the getExifdata() function 2 times, once as const, read only and once to read and write. I think here is the QExplicitlySharedDataPointer the right choice, which does not execute an automatic detach(). The write operations should be intercepted by our mutex.

Maik</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1893564</commentid>
    <comment_count>266</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2019-11-26 17:48:47 +0000</bug_when>
    <thetext>Git commit 33735b564c7cb1276d1a0588a518190300f83d31 by Maik Qualmann.
Committed on 26/11/2019 at 17:47.
Pushed by mqualmann into branch &apos;master&apos;.

use QExplicitlySharedDataPointer for MetaEngineData

M  +2    -2    core/libs/metadataengine/engine/metaengine_data.h
M  +1    -1    core/libs/metadataengine/engine/metaengine_p.h

https://invent.kde.org/kde/digikam/commit/33735b564c7cb1276d1a0588a518190300f83d31</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1893673</commentid>
    <comment_count>267</comment_count>
    <who name="">timokau</who>
    <bug_when>2019-11-27 15:32:22 +0000</bug_when>
    <thetext>With 105ccfd47cc8ac73037eac0d6873581a9e49c1aa:

&gt; digikam.general: Try to get preview from &quot;/tmp/tmp.CebnuTHvLs/Pictures/p/sth/P1020970.JPG&quot;
&gt; digikam.general: Preview quality:  1
&gt; digikam.dimg: &quot;/tmp/tmp.CebnuTHvLs/Pictures/p/sth/P1020970.JPG&quot; : &quot;JPEG&quot; file identified
&gt; digikam.general: Cancel Main Thread
&gt; [Thread 0x7fff48d1a700 (LWP 9071) exited]
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.general: Found 0 faces in &quot;P1020949.JPG&quot; QSize(3072, 2304) QSize(3072, 2304)
&gt; digikam.general: Removing old entries ()
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.general: Try to get preview from &quot;/tmp/tmp.CebnuTHvLs/Pictures/p/sth/P1020971.JPG&quot;
&gt; digikam.general: Preview quality:  1
&gt; digikam.dimg: &quot;/tmp/tmp.CebnuTHvLs/Pictures/p/sth/P1020971.JPG&quot; : &quot;JPEG&quot; file identified
&gt; 
&gt; Thread 57 &quot;Thread (pooled)&quot; received signal SIGSEGV, Segmentation fault.
&gt; [Switching to Thread 0x7fff337fe700 (LWP 27911)]
&gt; 0x0000000000000018 in ?? ()
&gt; (gdb) bt
&gt; #0  0x0000000000000018 in ?? ()
&gt; #1  0x00007ffff3aa6945 in Exiv2::ExifKey::clone() const () from /nix/store/56932a3lcqp48131p0w0ggr1lhxxna3v-exiv2-0.27.1/lib/libexiv2.so.27
&gt; #2  0x00007ffff3a58bb2 in Exiv2::Exifdatum::Exifdatum(Exiv2::Exifdatum const&amp;) () from /nix/store/56932a3lcqp48131p0w0ggr1lhxxna3v-exiv2-0.27.1/lib/libexiv2.so.27
&gt; #3  0x00007ffff78d45cd in __gnu_cxx::new_allocator&lt;std::_List_node&lt;Exiv2::Exifdatum&gt; &gt;::construct&lt;Exiv2::Exifdatum, Exiv2::Exifdatum const&amp;&gt; (this=&lt;optimized out&gt;, __p=&lt;optimized out&gt;) at /nix/store/wr5dlcw1asw8dwgm4bwjmga8f52m5lfx-gcc-7.4.0/include/c++/7.4.0/ext/new_allocator.h:136
&gt; #4  std::allocator_traits&lt;std::allocator&lt;std::_List_node&lt;Exiv2::Exifdatum&gt; &gt; &gt;::construct&lt;Exiv2::Exifdatum, Exiv2::Exifdatum const&amp;&gt; (__a=..., __p=&lt;optimized out&gt;) at /nix/store/wr5dlcw1asw8dwgm4bwjmga8f52m5lfx-gcc-7.4.0/include/c++/7.4.0/bits/alloc_traits.h:475
&gt; #5  std::__cxx11::list&lt;Exiv2::Exifdatum, std::allocator&lt;Exiv2::Exifdatum&gt; &gt;::_M_create_node&lt;Exiv2::Exifdatum const&amp;&gt; (this=0x7fff337fccb0) at /nix/store/wr5dlcw1asw8dwgm4bwjmga8f52m5lfx-gcc-7.4.0/include/c++/7.4.0/bits/stl_list.h:575
&gt; #6  std::__cxx11::list&lt;Exiv2::Exifdatum, std::allocator&lt;Exiv2::Exifdatum&gt; &gt;::_M_insert&lt;Exiv2::Exifdatum const&amp;&gt; (__position=..., this=0x7fff337fccb0) at /nix/store/wr5dlcw1asw8dwgm4bwjmga8f52m5lfx-gcc-7.4.0/include/c++/7.4.0/bits/stl_list.h:1801
&gt; #7  std::__cxx11::list&lt;Exiv2::Exifdatum, std::allocator&lt;Exiv2::Exifdatum&gt; &gt;::emplace_back&lt;Exiv2::Exifdatum const&amp;&gt; (this=0x7fff337fccb0) at /nix/store/wr5dlcw1asw8dwgm4bwjmga8f52m5lfx-gcc-7.4.0/include/c++/7.4.0/bits/stl_list.h:1133
&gt; #8  std::__cxx11::list&lt;Exiv2::Exifdatum, std::allocator&lt;Exiv2::Exifdatum&gt; &gt;::_M_initialize_dispatch&lt;std::_List_const_iterator&lt;Exiv2::Exifdatum&gt; &gt; (__last=..., __first=..., this=0x7fff337fccb0) at /nix/store/wr5dlcw1asw8dwgm4bwjmga8f52m5lfx-gcc-7.4.0/include/c++/7.4.0/bits/stl_list.h:1730
&gt; #9  std::__cxx11::list&lt;Exiv2::Exifdatum, std::allocator&lt;Exiv2::Exifdatum&gt; &gt;::list (__x=..., this=0x7fff337fccb0) at /nix/store/wr5dlcw1asw8dwgm4bwjmga8f52m5lfx-gcc-7.4.0/include/c++/7.4.0/bits/stl_list.h:655
&gt; #10 Exiv2::ExifData::ExifData (this=0x7fff337fccb0) at /nix/store/291xr43ngjk60aw7ldshmajbavn5ajn8-exiv2-0.27.1-dev/include/exiv2/exif.hpp:434
&gt; #11 Digikam::MetaEngine::getExifTagData (this=this@entry=0x7fff337fcdb0, exifTagName=exifTagName@entry=0x7ffff7d95f5d &quot;Exif.Image.InterColorProfile&quot;) at /tmp/tmp.CebnuTHvLs/digikam/core/libs/metadataengine/engine/metaengine_exif.cpp:686
&gt; #12 0x00007ffff7911984 in Digikam::DMetadata::getIccProfile (this=this@entry=0x7fff337fcdb0) at /tmp/tmp.CebnuTHvLs/digikam/core/libs/metadataengine/dmetadata/dmetadata_exif.cpp:85
&gt; #13 0x00007ffff7767ddf in Digikam::DImgLoader::checkExifWorkingColorSpace (this=this@entry=0x7fff1c19bc00) at /tmp/tmp.CebnuTHvLs/digikam/core/libs/dimg/loaders/dimgloader.cpp:243
&gt; #14 0x00007fffc28d8486 in DigikamJPEGDImgPlugin::DImgJPEGLoader::load (this=0x7fff1c19bc00, filePath=..., observer=0x2e82e20) at /tmp/tmp.CebnuTHvLs/digikam/core/dplugins/dimg/jpeg/dimgjpegloader_load.cpp:601
&gt; #15 0x00007ffff78a1dfc in Digikam::DImg::load (this=this@entry=0x2e82ff8, filePath=..., loadFlagsInt=loadFlagsInt@entry=63, observer=observer@entry=0x2e82e20, rawDecodingSettings=...) at /tmp/tmp.CebnuTHvLs/digikam/core/libs/dimg/dimg_fileio.cpp:138
&gt; #16 0x00007ffff78a3090 in Digikam::DImg::load (this=this@entry=0x2e82ff8, filePath=..., observer=observer@entry=0x2e82e20, rawDecodingSettings=...) at /tmp/tmp.CebnuTHvLs/digikam/core/libs/dimg/dimg_fileio.cpp:63
&gt; #17 0x00007ffff7967600 in Digikam::PreviewLoadingTask::execute (this=0x2e82e10) at /tmp/tmp.CebnuTHvLs/digikam/core/libs/threadimageio/preview/previewtask.cpp:286
&gt; #18 0x00007ffff797d7fe in Digikam::LoadSaveThread::run (this=0x2bd8070) at /tmp/tmp.CebnuTHvLs/digikam/core/libs/threadimageio/fileio/loadsavethread.cpp:133
&gt; #19 0x00007ffff799de5e in Digikam::DynamicThread::Private::run (this=0x2b9e240) at /tmp/tmp.CebnuTHvLs/digikam/core/libs/threads/dynamicthread.cpp:183
&gt; #20 0x00007ffff4b1b7d2 in ?? () from /nix/store/683732s7dq6bxrl267lcadl5lvn6i4nh-qtbase-5.12.0/lib/libQt5Core.so.5
&gt; #21 0x00007ffff4b17062 in ?? () from /nix/store/683732s7dq6bxrl267lcadl5lvn6i4nh-qtbase-5.12.0/lib/libQt5Core.so.5
&gt; #22 0x00007ffff44e2ef7 in start_thread () from /nix/store/iykxb0bmfjmi7s53kfg6pjbfpd8jmza6-glibc-2.27/lib/libpthread.so.0
&gt; #23 0x00007ffff441822f in clone () from /nix/store/iykxb0bmfjmi7s53kfg6pjbfpd8jmza6-glibc-2.27/lib/libc.so.6
&gt; (gdb)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1893674</commentid>
    <comment_count>268</comment_count>
      <attachid>124143</attachid>
    <who name="">timokau</who>
    <bug_when>2019-11-27 15:33:26 +0000</bug_when>
    <thetext>Created attachment 124143
digikam resource usage with 105ccfd47cc8ac73037eac0d6873581a9e49c1aa</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1893681</commentid>
    <comment_count>269</comment_count>
    <who name="">caulier.gilles</who>
    <bug_when>2019-11-27 16:34:40 +0000</bug_when>
    <thetext>It&apos;s clear. your last backtrace as nothing to do with face management.

The crash come from Exiv2 shared library when an ICC color profile is taken from a JPEG image to render an image.

1/ did you have the Color Management enabled on your digiKam settings ? If yes, please turn off and try again.

2/ Which Exiv2 version do you use exactly ? I hope that it&apos;s the last stable 0.27.2. If now, please update this component and recompile digiKam. It&apos;s important, as Exiv2 is a critical component for digiKam, it&apos;s used everywhere.

3/ Can you process the facemanagement step by step to parse small parts of the collection. The idea is to try to localize the JPEG file which crash Exiv2.

Best

Gilles Caulier</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1893868</commentid>
    <comment_count>270</comment_count>
    <who name="">timokau</who>
    <bug_when>2019-11-28 20:22:19 +0000</bug_when>
    <thetext>I was using exiv2 0.27.1. I&apos;ve updated to 0.27.2, disabled color management (which was enabled in the other runs, since every run starts from a clean digikam with default configuration). With 105ccfd47cc8ac73037eac0d6873581a9e49c1aa:

&gt; digikam.general: Found 0 faces in &quot;IMG_20180620_172836326_HDR.jpg&quot; QSize(4160, 3120) QSize(4160, 3120)
&gt; digikam.general: Removing old entries ()
&gt; digikam.general: Cancel Main Thread
&gt; [Thread 0x7fff1affd700 (LWP 23850) exited]
&gt; digikam.general: One job is done
&gt; digikam.general: Cancel Main Thread
&gt; [Thread 0x7fff1a7fc700 (LWP 23851) exited]
&gt; digikam.general: Check for finish:  10 packages, 0 infos to filter, hasFinished() false
&gt; digikam.general: Try to get preview from &quot;/tmp/tmp.PyUwvaBSNi/Pictures/p/something/IMG_20180621_105141093.jpg&quot;
&gt; digikam.general: Preview quality:  1
&gt; digikam.dimg: &quot;/tmp/tmp.PyUwvaBSNi/Pictures/p/something/IMG_20180621_105141093.jpg&quot; : &quot;JPEG&quot; file identified
&gt; digikam.metaengine: Exif color-space tag is sRGB. Using default sRGB ICC profile.
&gt; digikam.facesengine: Good rect =  QRect(248,151 32x42) , conf =  0.81234
&gt; digikam.general: Found 1 faces in &quot;IMG_20180620_215959940_HDR.jpg&quot; QSize(4160, 3120) QSize(4160, 3120)
&gt; digikam.general: Removing old entries ()
&gt; digikam.general: Found 0 faces in &quot;IMG_20180621_100509050.jpg&quot; QSize(3120, 4160) QSize(3120, 4160)
&gt; digikam.general: Removing old entries ()
&gt; 
&gt; Thread 1137 &quot;Thread (pooled)&quot; received signal SIGSEGV, Segmentation fault.
&gt; [Switching to Thread 0x7fff5cf59700 (LWP 4434)]
&gt; Digikam::DImg::rotate (this=0x256ef48, angle=angle@entry=Digikam::DImg::ROT90)
&gt;     at /tmp/tmp.PyUwvaBSNi/digikam/core/libs/dimg/dimg_transform.cpp:119
&gt; 119                             *to = *from++;
&gt; (gdb) bt
&gt; #0  Digikam::DImg::rotate (this=0x256ef48, angle=angle@entry=Digikam::DImg::ROT90) at /tmp/tmp.PyUwvaBSNi/digikam/core/libs/dimg/dimg_transform.cpp:119
&gt; #1  0x00007ffff78b4997 in Digikam::DImg::rotateAndFlip (this=this@entry=0x256ef48, orientation=&lt;optimized out&gt;) at /tmp/tmp.PyUwvaBSNi/digikam/core/libs/dimg/dimg_transform.cpp:450
&gt; #2  0x00007ffff78b4b8e in Digikam::DImg::exifRotate (this=this@entry=0x256ef48, filePath=...) at /tmp/tmp.PyUwvaBSNi/digikam/core/libs/dimg/dimg_transform.cpp:562
&gt; #3  0x00007ffff7967c74 in Digikam::PreviewLoadingTask::execute (this=0x256ed60) at /tmp/tmp.PyUwvaBSNi/digikam/core/libs/threadimageio/preview/previewtask.cpp:296
&gt; #4  0x00007ffff797d84e in Digikam::LoadSaveThread::run (this=0x2525630) at /tmp/tmp.PyUwvaBSNi/digikam/core/libs/threadimageio/fileio/loadsavethread.cpp:133
&gt; #5  0x00007ffff799deae in Digikam::DynamicThread::Private::run (this=0x2c4b4f0) at /tmp/tmp.PyUwvaBSNi/digikam/core/libs/threads/dynamicthread.cpp:183
&gt; #6  0x00007ffff4b1b7d2 in ?? () from /nix/store/683732s7dq6bxrl267lcadl5lvn6i4nh-qtbase-5.12.0/lib/libQt5Core.so.5
&gt; #7  0x00007ffff4b17062 in ?? () from /nix/store/683732s7dq6bxrl267lcadl5lvn6i4nh-qtbase-5.12.0/lib/libQt5Core.so.5
&gt; #8  0x00007ffff44e2ef7 in start_thread () from /nix/store/iykxb0bmfjmi7s53kfg6pjbfpd8jmza6-glibc-2.27/lib/libpthread.so.0
&gt; #9  0x00007ffff441822f in clone () from /nix/store/iykxb0bmfjmi7s53kfg6pjbfpd8jmza6-glibc-2.27/lib/libc.so.6
&gt; (gdb)

I don&apos;t think isolating a single image is going to work, since there is no failure that is deterministically triggered by a single image. Sometimes the scan succeeds without crash.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1893886</commentid>
    <comment_count>271</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2019-11-28 21:14:00 +0000</bug_when>
    <thetext>The cause here might be that we did not get the requested memory as a block. Hmm, yes we have to check if we got the memory, but what if not? Just do not rotate? On the other hand, we have to look at where we lose memory somewhere, the memory consumption seems to me a bit too high.

Maik</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1893888</commentid>
    <comment_count>272</comment_count>
      <attachid>124172</attachid>
    <who name="">timokau</who>
    <bug_when>2019-11-28 21:25:46 +0000</bug_when>
    <thetext>Created attachment 124172
here&apos;s one additional trace taken during the last run</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1893891</commentid>
    <comment_count>273</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2019-11-28 21:34:50 +0000</bug_when>
    <thetext>However, I see no error message that the memory could not be requested. Another possibility is that the shared image data is changed by another thread at the same time.

Maik</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1893893</commentid>
    <comment_count>274</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2019-11-28 21:54:44 +0000</bug_when>
    <thetext>Git commit 62ab5314c3b32a83c0b765b67c251ee2bd810b37 by Maik Qualmann.
Committed on 28/11/2019 at 21:53.
Pushed by mqualmann into branch &apos;master&apos;.

add debug, we need the loading task status

M  +2    -0    core/libs/threadimageio/preview/previewtask.cpp

https://invent.kde.org/kde/digikam/commit/62ab5314c3b32a83c0b765b67c251ee2bd810b37</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1894122</commentid>
    <comment_count>275</comment_count>
    <who name="">timokau</who>
    <bug_when>2019-11-30 13:55:45 +0000</bug_when>
    <thetext>Not sure how useful that debug information is, loading task status seems to always be 0. With e69b8317e24ee6487b6a79a75052aab6e7024f43:


&gt; digikam.general: Loading task status: 0
&gt; digikam.general: Try to get preview from &quot;/tmp/tmp.jRPmEBcJjg/Pictures/p/something/IMG_7056.JPG&quot;
&gt; digikam.general: Preview quality:  1
&gt; digikam.dimg: &quot;/tmp/tmp.jRPmEBcJjg/Pictures/p/something/IMG_7056.JPG&quot; : &quot;JPEG&quot; file identified
&gt; digikam.general: Using  4  CPU core to run threads
&gt; [New Thread 0x7fff5d3ff700 (LWP 28951)]
&gt; digikam.general: Action Thread run  1  new jobs
&gt; [New Thread 0x7fff23fff700 (LWP 28952)]
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.database: &quot; ( ( (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=?  ) ) &quot;
&gt; digikam.database: Search query:
&gt;  &quot;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 (  (
&gt; ( (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=?  ) )  );&quot;
&gt;  (QVariant(int, 4), QVariant(int, 4), QVariant(QString, &quot;autodetectedPerson&quot;), QVariant(int, 4), QVariant(int, 4), QVariant(QString, &quot;autodetectedFace&quot;), QVariant(int, 4), QVariant(int, 4), QVariant(QString, &quot;tagRegion&quot;))
&gt; digikam.database: Search result: 2618
&gt; digikam.general: Trying to get thumbnail with Exiv2 for &quot;/tmp/tmp.jRPmEBcJjg/Pictures/p/Android/Camera/IMG_20140731_200523.jpg&quot;
&gt; digikam.general: Trying to get thumbnail with DImg preview for &quot;/tmp/tmp.jRPmEBcJjg/Pictures/p/Android/Camera/IMG_20140731_200523.jpg&quot;
&gt; digikam.dimg: &quot;/tmp/tmp.jRPmEBcJjg/Pictures/p/Android/Camera/IMG_20140731_200523.jpg&quot; : &quot;JPEG&quot; file identified
&gt; digikam.general: Cancel Main Thread
&gt; [Thread 0x7fff5d3ff700 (LWP 28951) exited]
&gt; digikam.general: One job is done
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.general: Cancel Main Thread
&gt; [Thread 0x7fff23fff700 (LWP 28952) exited]
&gt; 
&gt; Thread 79 &quot;Thread (pooled)&quot; received signal SIGSEGV, Segmentation fault.
&gt; [Switching to Thread 0x7fff3effd700 (LWP 20118)]
&gt; 0x00007ffff4b9e72a in operator==(QString const&amp;, QString const&amp;) ()
&gt;    from /nix/store/683732s7dq6bxrl267lcadl5lvn6i4nh-qtbase-5.12.0/lib/libQt5Core.so.5
&gt; (gdb) bt
&gt; #0  0x00007ffff4b9e72a in operator==(QString const&amp;, QString const&amp;) () from /nix/store/683732s7dq6bxrl267lcadl5lvn6i4nh-qtbase-5.12.0/lib/libQt5Core.so.5
&gt; #1  0x00007ffff797e275 in Digikam::LoadingDescription::equalsIgnoreReducedVersion (this=&lt;optimized out&gt;, other=...) at /tmp/tmp.jRPmEBcJjg/digikam/core/libs/threadimageio/fileio/loadingdescription.cpp:313
&gt; #2  0x00007ffff798868b in Digikam::SharedLoadingTask::notifyNewLoadingProcess (this=0x4d316a0, process=&lt;optimized out&gt;, description=...)
&gt;     at /tmp/tmp.jRPmEBcJjg/digikam/core/libs/threadimageio/fileio/loadsavetask.cpp:434
&gt; #3  0x00007ffff797f6e0 in Digikam::LoadingCache::notifyNewLoadingProcess (this=this@entry=0x5ae960, process=process@entry=0x323d7d0, description=...)
&gt;     at /tmp/tmp.jRPmEBcJjg/digikam/core/libs/threadimageio/fileio/loadingcache.cpp:240
&gt; #4  0x00007ffff79668b5 in Digikam::PreviewLoadingTask::execute (this=0x323d610) at /tmp/tmp.jRPmEBcJjg/digikam/core/libs/threadimageio/preview/previewtask.cpp:146
&gt; #5  0x00007ffff797c93e in Digikam::LoadSaveThread::run (this=0x2cd24c0) at /tmp/tmp.jRPmEBcJjg/digikam/core/libs/threadimageio/fileio/loadsavethread.cpp:133
&gt; #6  0x00007ffff799cf9e in Digikam::DynamicThread::Private::run (this=0x3373e90) at /tmp/tmp.jRPmEBcJjg/digikam/core/libs/threads/dynamicthread.cpp:183
&gt; #7  0x00007ffff4b1a7d2 in ?? () from /nix/store/683732s7dq6bxrl267lcadl5lvn6i4nh-qtbase-5.12.0/lib/libQt5Core.so.5
&gt; #8  0x00007ffff4b16062 in ?? () from /nix/store/683732s7dq6bxrl267lcadl5lvn6i4nh-qtbase-5.12.0/lib/libQt5Core.so.5
&gt; #9  0x00007ffff44e1ef7 in start_thread () from /nix/store/iykxb0bmfjmi7s53kfg6pjbfpd8jmza6-glibc-2.27/lib/libpthread.so.0
&gt; #10 0x00007ffff441722f in clone () from /nix/store/iykxb0bmfjmi7s53kfg6pjbfpd8jmza6-glibc-2.27/lib/libc.so.6
&gt; (gdb)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1894196</commentid>
    <comment_count>276</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2019-11-30 21:53:08 +0000</bug_when>
    <thetext>Git commit 330d3cea6749f1a50783bd0acd6ac57b95cf0519 by Maik Qualmann.
Committed on 30/11/2019 at 21:52.
Pushed by mqualmann into branch &apos;master&apos;.

polish set loading status

M  +7    -3    core/libs/threadimageio/fileio/loadsavetask.cpp
M  +0    -26   core/libs/threadimageio/preview/previewtask.cpp
M  +1    -2    core/libs/threadimageio/preview/previewtask.h

https://invent.kde.org/kde/digikam/commit/330d3cea6749f1a50783bd0acd6ac57b95cf0519</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1894237</commentid>
    <comment_count>277</comment_count>
    <who name="">timokau</who>
    <bug_when>2019-12-01 10:21:50 +0000</bug_when>
    <thetext>With 330d3cea6749f1a50783bd0acd6ac57b95cf0519:

&gt; digikam.dimg: &quot;/tmp/tmp.CLpH7QxTNQ/Pictures/p/Android/Whatsapp/IMG-20140822-WA0033.jpg&quot; : &quot;JPEG&quot; file identified
&gt; digikam.general: Found 0 faces in &quot;IMG-20140809-WA0001.jpg&quot; QSize(1280, 721) QSize(1280, 721)
&gt; digikam.general: Removing old entries ()
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.general: Try to get preview from &quot;/tmp/tmp.CLpH7QxTNQ/Pictures/p/Android/Whatsapp/IMG-20140822-WA0034.jpg&quot;
&gt; digikam.general: Preview quality:  1
&gt; digikam.dimg: &quot;/tmp/tmp.CLpH7QxTNQ/Pictures/p/Android/Whatsapp/IMG-20140822-WA0034.jpg&quot; : &quot;JPEG&quot; file identified
&gt; digikam.general: Removing old entries ()
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.general: Removing old entries ()
&gt; digikam.general: Try to get preview from &quot;/tmp/tmp.CLpH7QxTNQ/Pictures/p/Android/Whatsapp/IMG-20140822-WA0035.jpg&quot;
&gt; digikam.general: Preview quality:  1
&gt; digikam.dimg: &quot;/tmp/tmp.CLpH7QxTNQ/Pictures/p/Android/Whatsapp/IMG-20140822-WA0035.jpg&quot; : &quot;JPEG&quot; file identified
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.general: Try to get preview from &quot;/tmp/tmp.CLpH7QxTNQ/Pictures/p/Android/Whatsapp/IMG-20140822-WA0036.jpg&quot;
&gt; digikam.general: Preview quality:  1
&gt; digikam.dimg: &quot;/tmp/tmp.CLpH7QxTNQ/Pictures/p/Android/Whatsapp/IMG-20140822-WA0036.jpg&quot; : &quot;JPEG&quot; file identified
&gt; digikam.general: Found 0 faces in &quot;IMG-20140809-WA0002.jpg&quot; QSize(1280, 720) QSize(1280, 720)
&gt; digikam.general: Removing old entries ()
&gt; digikam.facesengine: Good rect =  QRect(95,71 92x119) , conf =  0.998028
&gt; digikam.general: Found 1 faces in &quot;IMG-20140809-WA0003.jpg&quot; QSize(500, 609) QSize(500, 609)
&gt; digikam.general: Removing old entries ()
&gt; digikam.general: Found 0 faces in &quot;IMG-20140809-WA0004.jpg&quot; QSize(1280, 721) QSize(1280, 721)
&gt; digikam.general: Removing old entries ()
&gt; digikam.general: Found 0 faces in &quot;IMG-20140809-WA0005.jpg&quot; QSize(550, 555) QSize(550, 555)
&gt; digikam.general: Removing old entries ()
&gt; 
&gt; Thread 33 &quot;Thread (pooled)&quot; received signal SIGSEGV, Segmentation fault.
&gt; [Switching to Thread 0x7fff373ff700 (LWP 7826)]
&gt; 0x00007ffff43a252c in malloc_consolidate () from /nix/store/iykxb0bmfjmi7s53kfg6pjbfpd8jmza6-glibc-2.27/lib/libc.so.6
&gt; (gdb) bt
&gt; #0  0x00007ffff43a252c in malloc_consolidate () from /nix/store/iykxb0bmfjmi7s53kfg6pjbfpd8jmza6-glibc-2.27/lib/libc.so.6
&gt; #1  0x00007ffff43a3448 in _int_free () from /nix/store/iykxb0bmfjmi7s53kfg6pjbfpd8jmza6-glibc-2.27/lib/libc.so.6
&gt; #2  0x00007ffff789c0a6 in Digikam::DImg::Private::~Private (this=0x7fff3c064580, __in_chrg=&lt;optimized out&gt;) at /tmp/tmp.CLpH7QxTNQ/digikam/core/libs/dimg/dimg_p.h:140
&gt; #3  QExplicitlySharedDataPointer&lt;Digikam::DImg::Private&gt;::~QExplicitlySharedDataPointer (this=&lt;optimized out&gt;, __in_chrg=&lt;optimized out&gt;) at /nix/store/hy0z060pmjwrdrbb0qrii7hnwif8cz1y-qtbase-5.12.0-dev/include/QtCore/qshareddata.h:182
&gt; #4  Digikam::DImg::~DImg (this=&lt;optimized out&gt;, __in_chrg=&lt;optimized out&gt;) at /tmp/tmp.CLpH7QxTNQ/digikam/core/libs/dimg/dimg.cpp:188
&gt; #5  0x00007ffff7982d87 in QCache&lt;QString, Digikam::DImg&gt;::unlink (n=..., this=0x569f20) at /nix/store/hy0z060pmjwrdrbb0qrii7hnwif8cz1y-qtbase-5.12.0-dev/include/QtCore/qcache.h:69
&gt; #6  QCache&lt;QString, Digikam::DImg&gt;::trim (m=204869632, this=0x569f20) at /nix/store/hy0z060pmjwrdrbb0qrii7hnwif8cz1y-qtbase-5.12.0-dev/include/QtCore/qcache.h:193
&gt; #7  QCache&lt;QString, Digikam::DImg&gt;::insert (acost=4845568, aobject=0x7fff2809c950, akey=..., this=0x569f20) at /nix/store/hy0z060pmjwrdrbb0qrii7hnwif8cz1y-qtbase-5.12.0-dev/include/QtCore/qcache.h:173
&gt; #8  Digikam::LoadingCache::putImage (this=this@entry=0x5cced0, cacheKey=..., img=..., filePath=...) at /tmp/tmp.CLpH7QxTNQ/digikam/core/libs/threadimageio/fileio/loadingcache.cpp:193
&gt; #9  0x00007ffff79675df in Digikam::PreviewLoadingTask::execute (this=0x25fe5a0) at /tmp/tmp.CLpH7QxTNQ/digikam/core/libs/threadimageio/preview/previewtask.cpp:305
&gt; #10 0x00007ffff797d77e in Digikam::LoadSaveThread::run (this=0x7fff3c1c9160) at /tmp/tmp.CLpH7QxTNQ/digikam/core/libs/threadimageio/fileio/loadsavethread.cpp:133
&gt; #11 0x00007ffff799ddce in Digikam::DynamicThread::Private::run (this=0x3370680) at /tmp/tmp.CLpH7QxTNQ/digikam/core/libs/threads/dynamicthread.cpp:183
&gt; #12 0x00007ffff4b1b7d2 in ?? () from /nix/store/683732s7dq6bxrl267lcadl5lvn6i4nh-qtbase-5.12.0/lib/libQt5Core.so.5
&gt; #13 0x00007ffff4b17062 in ?? () from /nix/store/683732s7dq6bxrl267lcadl5lvn6i4nh-qtbase-5.12.0/lib/libQt5Core.so.5
&gt; #14 0x00007ffff44e2ef7 in start_thread () from /nix/store/iykxb0bmfjmi7s53kfg6pjbfpd8jmza6-glibc-2.27/lib/libpthread.so.0
&gt; #15 0x00007ffff441822f in clone () from /nix/store/iykxb0bmfjmi7s53kfg6pjbfpd8jmza6-glibc-2.27/lib/libc.so.6
&gt; (gdb)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1894265</commentid>
    <comment_count>278</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2019-12-01 13:01:57 +0000</bug_when>
    <thetext>Git commit aacced0438943b163ffa95a3e1d82d74e4d065ae by Maik Qualmann.
Committed on 01/12/2019 at 13:00.
Pushed by mqualmann into branch &apos;master&apos;.

return new DImg from QCache

M  +4    -2    core/libs/threadimageio/fileio/loadingcache.cpp

https://invent.kde.org/kde/digikam/commit/aacced0438943b163ffa95a3e1d82d74e4d065ae</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1894323</commentid>
    <comment_count>279</comment_count>
    <who name="">timokau</who>
    <bug_when>2019-12-01 17:03:11 +0000</bug_when>
    <thetext>With aacced0438943b163ffa95a3e1d82d74e4d065ae:

&gt; digikam.general: Preview quality:  1
&gt; digikam.dimg: &quot;/tmp/tmp.HClqSMevcG/Pictures/p/Syncthing-3TB/Telegram-Android/Telegram Images/238228297_1801.jpg&quot; : &quot;JPEG&quot; file identified
&gt; digikam.general: Found 0 faces in &quot;238224963_303731.jpg&quot; QSize(720, 1280) QSize(720, 1280)
&gt; digikam.general: Removing old entries ()
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.general: Try to get preview from &quot;/tmp/tmp.HClqSMevcG/Pictures/p/Syncthing-3TB/Telegram-Android/Telegram Images/238228345_51256.jpg&quot;
&gt; digikam.general: Preview quality:  1
&gt; digikam.dimg: &quot;/tmp/tmp.HClqSMevcG/Pictures/p/Syncthing-3TB/Telegram-Android/Telegram Images/238228345_51256.jpg&quot; : &quot;JPEG&quot; file identified
&gt; digikam.general: Found 0 faces in &quot;238224970_75850.jpg&quot; QSize(949, 1280) QSize(949, 1280)
&gt; digikam.general: Removing old entries ()
&gt; digikam.general: Found 0 faces in &quot;238224982_164876.jpg&quot; QSize(1280, 949) QSize(1280, 949)
&gt; digikam.general: Found 0 faces in &quot;238225065_102724.jpg&quot; QSize(589, 429) QSize(589, 429)
&gt; digikam.general: Found 0 faces in &quot;238225204_14626.jpg&quot; QSize(720, 1280) QSize(720, 1280)
&gt; digikam.general: Removing old entries ()
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.general: Try to get preview from &quot;/tmp/tmp.HClqSMevcG/Pictures/p/Syncthing-3TB/Telegram-Android/Telegram Images/238228411_98872.jpg&quot;
&gt; digikam.general: Preview quality:  1
&gt; digikam.dimg: &quot;/tmp/tmp.HClqSMevcG/Pictures/p/Syncthing-3TB/Telegram-Android/Telegram Images/238228411_98872.jpg&quot; : &quot;JPEG&quot; file identified
&gt; digikam.general: Removing old entries ()
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.general: Try to get preview from &quot;/tmp/tmp.HClqSMevcG/Pictures/p/Syncthing-3TB/Telegram-Android/Telegram Images/238228432_91266.jpg&quot;
&gt; digikam.general: Preview quality:  1
&gt; digikam.dimg: &quot;/tmp/tmp.HClqSMevcG/Pictures/p/Syncthing-3TB/Telegram-Android/Telegram Images/238228432_91266.jpg&quot; : &quot;JPEG&quot; file identified
&gt; digikam.general: Removing old entries ()
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.general: Try to get preview from &quot;/tmp/tmp.HClqSMevcG/Pictures/p/Syncthing-3TB/Telegram-Android/Telegram Images/238228438_206539.jpg&quot;
&gt; digikam.general: Preview quality:  1
&gt; digikam.dimg: &quot;/tmp/tmp.HClqSMevcG/Pictures/p/Syncthing-3TB/Telegram-Android/Telegram Images/238228438_206539.jpg&quot; : &quot;JPEG&quot; file identified
&gt; digikam.facesengine: Good rect =  QRect(76,85 71x104) , conf =  0.999438
&gt; digikam.general: Found 1 faces in &quot;238225234_157978.jpg&quot; QSize(1280, 959) QSize(1280, 959)
&gt; digikam.general: Removing old entries ()
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.general: Found 0 faces in &quot;238225255_170020.jpg&quot; QSize(1280, 949) QSize(1280, 949)
&gt; digikam.general: Removing old entries ()
&gt; digikam.general: Found 0 faces in &quot;238225346_22680.jpg&quot; QSize(949, 1280) QSize(949, 1280)
&gt; digikam.general: Removing old entries ()
&gt; digikam.general: Found 0 faces in &quot;238225406_274036.jpg&quot; QSize(1280, 720) QSize(1280, 720)
&gt; digikam.general: Removing old entries ()
&gt; digikam.general: Found 0 faces in &quot;238225432_9767.jpg&quot; QSize(960, 894) QSize(960, 894)
&gt; digikam.general: Removing old entries ()
&gt; 
&gt; Thread 52 &quot;Thread (pooled)&quot; received signal SIGSEGV, Segmentation fault.
&gt; [Switching to Thread 0x7fff2af58700 (LWP 21794)]
&gt; Digikam::PreviewLoadingTask::execute (this=0x31e1640)
&gt;     at /tmp/tmp.HClqSMevcG/digikam/core/libs/threadimageio/preview/previewtask.cpp:325
&gt; 325                         if (l-&gt;accessMode() == LoadSaveThread::AccessModeReadWrite)
&gt; (gdb) bt
&gt; #0  Digikam::PreviewLoadingTask::execute (this=0x31e1640) at /tmp/tmp.HClqSMevcG/digikam/core/libs/threadimageio/preview/previewtask.cpp:325
&gt; #1  0x00007ffff797d77e in Digikam::LoadSaveThread::run (this=0x5525c00) at /tmp/tmp.HClqSMevcG/digikam/core/libs/threadimageio/fileio/loadsavethread.cpp:133
&gt; #2  0x00007ffff799de0e in Digikam::DynamicThread::Private::run (this=0x3acb730) at /tmp/tmp.HClqSMevcG/digikam/core/libs/threads/dynamicthread.cpp:183
&gt; #3  0x00007ffff4b1b7d2 in ?? () from /nix/store/683732s7dq6bxrl267lcadl5lvn6i4nh-qtbase-5.12.0/lib/libQt5Core.so.5
&gt; #4  0x00007ffff4b17062 in ?? () from /nix/store/683732s7dq6bxrl267lcadl5lvn6i4nh-qtbase-5.12.0/lib/libQt5Core.so.5
&gt; #5  0x00007ffff44e2ef7 in start_thread () from /nix/store/iykxb0bmfjmi7s53kfg6pjbfpd8jmza6-glibc-2.27/lib/libpthread.so.0
&gt; #6  0x00007ffff441822f in clone () from /nix/store/iykxb0bmfjmi7s53kfg6pjbfpd8jmza6-glibc-2.27/lib/libc.so.6
&gt; (gdb)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1894324</commentid>
    <comment_count>280</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2019-12-01 17:12:59 +0000</bug_when>
    <thetext>Git commit a0774df21a8f039e3355c8ad3ffa0ca20924dbbf by Maik Qualmann.
Committed on 01/12/2019 at 17:11.
Pushed by mqualmann into branch &apos;master&apos;.

latest DImg change has a memory leak

M  +1    -3    core/libs/threadimageio/fileio/loadingcache.cpp
M  +1    -1    core/libs/threadimageio/fileio/loadsavetask.cpp
M  +1    -1    core/libs/threadimageio/preview/previewtask.cpp

https://invent.kde.org/kde/digikam/commit/a0774df21a8f039e3355c8ad3ffa0ca20924dbbf</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1895037</commentid>
    <comment_count>281</comment_count>
    <who name="">timokau</who>
    <bug_when>2019-12-05 12:09:11 +0000</bug_when>
    <thetext>With 43ef007a130c058982aaf61a900a0c95d99fd748, crashed on the 4th run after 3 successful ones:

&gt; digikam.general: Cancel Main Thread
&gt; [Thread 0x7fff22ffd700 (LWP 17652) exited]
&gt; digikam.general: One job is done
&gt; digikam.general: Cancel Main Thread
&gt; [Thread 0x7fff23fff700 (LWP 17653) exited]
&gt; digikam.metaengine: Exif color-space tag is sRGB. Using default sRGB ICC profile.
&gt; digikam.general: Try to get preview from &quot;/tmp/tmp.G5Y5JzCHGg/Pictures/p/Private Bilder/some-folder/sth-086.JPG&quot;
&gt; digikam.general: Preview quality:  1
&gt; digikam.dimg: &quot;/tmp/tmp.G5Y5JzCHGg/Pictures/p/Private Bilder/some-folder/sth-086.JPG&quot; : &quot;JPEG&quot; file identified
&gt; digikam.general: Found 0 faces in &quot;sth-042.JPG&quot; QSize(2448, 3264) QSize(2448, 3264)
&gt; digikam.general: Removing old entries ()
&gt; digikam.metaengine: Exif color-space tag is sRGB. Using default sRGB ICC profile.
&gt; digikam.general: Try to get preview from &quot;/tmp/tmp.G5Y5JzCHGg/Pictures/p/Private Bilder/some-folder/sth-087.JPG&quot;
&gt; digikam.general: Preview quality:  1
&gt; digikam.dimg: &quot;/tmp/tmp.G5Y5JzCHGg/Pictures/p/Private Bilder/some-folder/sth-087.JPG&quot; : &quot;JPEG&quot; file identified
&gt; digikam.metaengine: Exif color-space tag is sRGB. Using default sRGB ICC profile.
&gt; digikam.general: Try to get preview from &quot;/tmp/tmp.G5Y5JzCHGg/Pictures/p/Private Bilder/some-folder/sth-088.JPG&quot;
&gt; digikam.general: Preview quality:  1
&gt; digikam.dimg: &quot;/tmp/tmp.G5Y5JzCHGg/Pictures/p/Private Bilder/some-folder/sth-088.JPG&quot; : &quot;JPEG&quot; file identified
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.general: Found 0 faces in &quot;sth-043.JPG&quot; QSize(3264, 2448) QSize(3264, 2448)
&gt; digikam.general: Removing old entries ()
&gt; digikam.metaengine: Exif color-space tag is sRGB. Using default sRGB ICC profile.
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.general: Found 0 faces in &quot;sth-044.JPG&quot; QSize(3264, 2448) QSize(3264, 2448)
&gt; digikam.general: Removing old entries ()
&gt; digikam.general: Found 0 faces in &quot;sth-045.JPG&quot; QSize(3264, 2448) QSize(3264, 2448)
&gt; digikam.general: Removing old entries ()
&gt; digikam.general: Found 0 faces in &quot;sth-046.JPG&quot; QSize(3264, 2448) QSize(3264, 2448)
&gt; digikam.general: Removing old entries ()
&gt; 
&gt; Thread 47 &quot;Thread (pooled)&quot; received signal SIGSEGV, Segmentation fault.
&gt; [Switching to Thread 0x7fff3cf54700 (LWP 4085)]
&gt; 0x0000000000000000 in ?? ()
&gt; (gdb) bt
&gt; #0  0x0000000000000000 in ?? ()
&gt; #1  0x00007ffff7967a6d in Digikam::PreviewLoadingTask::execute (this=0x41f7db0) at /tmp/tmp.G5Y5JzCHGg/digikam/core/libs/threadimageio/preview/previewtask.cpp:338
&gt; #2  0x00007ffff797d79e in Digikam::LoadSaveThread::run (this=0x7fff40072190) at /tmp/tmp.G5Y5JzCHGg/digikam/core/libs/threadimageio/fileio/loadsavethread.cpp:133
&gt; #3  0x00007ffff799de0e in Digikam::DynamicThread::Private::run (this=0x3847210) at /tmp/tmp.G5Y5JzCHGg/digikam/core/libs/threads/dynamicthread.cpp:183
&gt; #4  0x00007ffff4b1b7d2 in ?? () from /nix/store/683732s7dq6bxrl267lcadl5lvn6i4nh-qtbase-5.12.0/lib/libQt5Core.so.5
&gt; #5  0x00007ffff4b17062 in ?? () from /nix/store/683732s7dq6bxrl267lcadl5lvn6i4nh-qtbase-5.12.0/lib/libQt5Core.so.5
&gt; #6  0x00007ffff44e2ef7 in start_thread () from /nix/store/iykxb0bmfjmi7s53kfg6pjbfpd8jmza6-glibc-2.27/lib/libpthread.so.0
&gt; #7  0x00007ffff441822f in clone () from /nix/store/iykxb0bmfjmi7s53kfg6pjbfpd8jmza6-glibc-2.27/lib/libc.so.6
&gt; (gdb)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1895109</commentid>
    <comment_count>282</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2019-12-05 22:30:31 +0000</bug_when>
    <thetext>Git commit 58e483a0a3bddc9cb339ab4b5548623a2d18bc3d by Maik Qualmann.
Committed on 05/12/2019 at 22:29.
Pushed by mqualmann into branch &apos;master&apos;.

small changes on the preview task

M  +44   -52   core/libs/threadimageio/fileio/loadsavetask.cpp
M  +1    -2    core/libs/threadimageio/fileio/loadsavetask.h
M  +34   -42   core/libs/threadimageio/preview/previewtask.cpp
M  +32   -37   core/libs/threadimageio/thumb/thumbnailtask.cpp

https://invent.kde.org/kde/digikam/commit/58e483a0a3bddc9cb339ab4b5548623a2d18bc3d</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1895616</commentid>
    <comment_count>283</comment_count>
    <who name="">timokau</who>
    <bug_when>2019-12-09 11:00:31 +0000</bug_when>
    <thetext>With 8dd3f5099466dede99fd300e55db84fbff6dbad0 (from 2019-12-07):

&gt; digikam.general: Try to get preview from &quot;/tmp/tmp.848xADW9lH/Pictures/p/some-path/DSCN1115.jpg&quot;
&gt; digikam.general: Preview quality:  1
&gt; digikam.dimg: &quot;/tmp/tmp.848xADW9lH/Pictures/p/some-path/DSCN1115.jpg&quot; : &quot;JPEG&quot; file identified
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.facesengine: Good rect =  QRect(108,73 65x90) , conf =  0.999973
&gt; digikam.facesengine: Good rect =  QRect(172,106 56x77) , conf =  0.997096
&gt; digikam.general: Found 2 faces in &quot;DSCN0912.jpg&quot; QSize(4320, 3240) QSize(4320, 3240)
&gt; digikam.general: Removing old entries ()
&gt; digikam.general: Entry QRect(1490,556 1215x1215)227overlapsQRect(1555,518 936x1296)6, skipping
&gt; digikam.general: Entry QRect(2241,1031 1004x1005)99overlapsQRect(2477,994 806x1108)6, skipping
&gt; digikam.dimg:  : return null image! ( false ,  0 ,  0 )
&gt; digikam.dimg:  : return null image! ( false ,  0 ,  0 )
&gt; digikam.general: Try to get preview from &quot;/tmp/tmp.848xADW9lH/Pictures/p/some-path/DSCN1116.jpg&quot;
&gt; digikam.general: Preview quality:  1
&gt; digikam.dimg: &quot;/tmp/tmp.848xADW9lH/Pictures/p/some-path/DSCN1116.jpg&quot; : &quot;JPEG&quot; file identified
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.metaengine: Exif color-space tag is sRGB. Using default sRGB ICC profile.
&gt; digikam.facesengine: Good rect =  QRect(94,100 56x76) , conf =  0.995798
&gt; digikam.facesengine: Good rect =  QRect(148,90 62x74) , conf =  0.950529
&gt; digikam.general: Found 2 faces in &quot;DSCN0913.jpg&quot; QSize(4320, 3240) QSize(4320, 3240)
&gt; digikam.general: Removing old entries ()
&gt; digikam.general: Using  4  CPU core to run threads
&gt; digikam.facesengine: Good rect =  QRect(98,85 62x87) , conf =  0.999666
&gt; digikam.facesengine: Good rect =  QRect(23,90 73x88) , conf =  0.998955
&gt; digikam.facesengine: Good rect =  QRect(179,85 73x66) , conf =  0.866344
&gt; digikam.general: Found 3 faces in &quot;DSCN0923.jpg&quot; QSize(4320, 3240) QSize(4320, 3240)
&gt; digikam.general: Removing old entries ()
&gt; digikam.facesengine: Good rect =  QRect(176,137 39x50) , conf =  0.978829
&gt; digikam.facesengine: Good rect =  QRect(125,72 31x49) , conf =  0.721479
&gt; digikam.general: Found 2 faces in &quot;DSCN0945.jpg&quot; QSize(4320, 3240) QSize(4320, 3240)
&gt; digikam.general: Removing old entries ()
&gt; [New Thread 0x7fff237fe700 (LWP 21359)]
&gt; 
&gt; Thread 42 &quot;Thread (pooled)&quot; received signal SIGSEGV, Segmentation fault.
&gt; [Switching to Thread 0x7fff5cbfe700 (LWP 17198)]
&gt; 0x00007ffff7989737 in Digikam::LoadingTask::progressInfo (this=0x3968070, img=0x3968258, progress=0.798271596)
&gt;     at /tmp/tmp.848xADW9lH/digikam/core/libs/threadimageio/fileio/loadsavetask.cpp:65
&gt; 65              if (m_thread &amp;&amp; m_thread-&gt;querySendNotifyEvent())
&gt; (gdb) bt
&gt; #0  0x00007ffff7989737 in Digikam::LoadingTask::progressInfo (this=0x3968070, img=0x3968258, progress=0.798271596) at /tmp/tmp.848xADW9lH/digikam/core/libs/threadimageio/fileio/loadsavetask.cpp:65
&gt; #1  0x00007fffb2099a40 in DigikamJPEGDImgPlugin::DImgJPEGLoader::load (this=0x7fff24260050, filePath=..., observer=0x3968080) at /tmp/tmp.848xADW9lH/digikam/core/dplugins/dimg/jpeg/dimgjpegloader_load.cpp:434
&gt; #2  0x00007ffff78a2dcc in Digikam::DImg::load (this=this@entry=0x3968258, filePath=..., loadFlagsInt=loadFlagsInt@entry=63, observer=observer@entry=0x3968080, rawDecodingSettings=...) at /tmp/tmp.848xADW9lH/digikam/core/libs/dimg/dimg_fileio.cpp:138
&gt; #3  0x00007ffff78a4060 in Digikam::DImg::load (this=this@entry=0x3968258, filePath=..., observer=observer@entry=0x3968080, rawDecodingSettings=...) at /tmp/tmp.848xADW9lH/digikam/core/libs/dimg/dimg_fileio.cpp:63
&gt; #4  0x00007ffff7967fcf in Digikam::PreviewLoadingTask::execute (this=0x3968070) at /tmp/tmp.848xADW9lH/digikam/core/libs/threadimageio/preview/previewtask.cpp:286
&gt; #5  0x00007ffff797dcce in Digikam::LoadSaveThread::run (this=0x25b18f0) at /tmp/tmp.848xADW9lH/digikam/core/libs/threadimageio/fileio/loadsavethread.cpp:133
&gt; #6  0x00007ffff799e37e in Digikam::DynamicThread::Private::run (this=0x2974e10) at /tmp/tmp.848xADW9lH/digikam/core/libs/threads/dynamicthread.cpp:183
&gt; #7  0x00007ffff4b1d7d2 in ?? () from /nix/store/683732s7dq6bxrl267lcadl5lvn6i4nh-qtbase-5.12.0/lib/libQt5Core.so.5
&gt; #8  0x00007ffff4b19062 in ?? () from /nix/store/683732s7dq6bxrl267lcadl5lvn6i4nh-qtbase-5.12.0/lib/libQt5Core.so.5
&gt; #9  0x00007ffff44e4ef7 in start_thread () from /nix/store/iykxb0bmfjmi7s53kfg6pjbfpd8jmza6-glibc-2.27/lib/libpthread.so.0
&gt; #10 0x00007ffff441a22f in clone () from /nix/store/iykxb0bmfjmi7s53kfg6pjbfpd8jmza6-glibc-2.27/lib/libc.so.6
&gt; (gdb)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1895703</commentid>
    <comment_count>284</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2019-12-09 22:00:45 +0000</bug_when>
    <thetext>Git commit 8229ef53b49b0c62244a96cb8f7d06a7452b4ce3 by Maik Qualmann.
Committed on 09/12/2019 at 21:59.
Pushed by mqualmann into branch &apos;master&apos;.

various changes to the loading task classes

M  +7    -7    core/dplugins/dimg/heif/dimgheifloader_load.cpp
M  +2    -2    core/dplugins/dimg/heif/dimgheifloader_save.cpp
M  +7    -7    core/dplugins/dimg/imagemagick/dimgimagemagickloader.cpp
M  +9    -9    core/dplugins/dimg/jpeg/dimgjpegloader_load.cpp
M  +6    -6    core/dplugins/dimg/jpeg/dimgjpegloader_save.cpp
M  +4    -4    core/dplugins/dimg/jpeg2000/dimgjpeg2000loader_load.cpp
M  +4    -4    core/dplugins/dimg/jpeg2000/dimgjpeg2000loader_save.cpp
M  +2    -2    core/dplugins/dimg/pgf/dimgpgfloader.cpp
M  +1    -1    core/dplugins/dimg/pgf/dimgpgfloader_load.cpp
M  +1    -1    core/dplugins/dimg/pgf/dimgpgfloader_save.cpp
M  +6    -6    core/dplugins/dimg/png/dimgpngloader_load.cpp
M  +3    -3    core/dplugins/dimg/png/dimgpngloader_save.cpp
M  +4    -4    core/dplugins/dimg/qimage/dimgqimageloader.cpp
M  +6    -6    core/dplugins/dimg/raw/dimgrawloader.cpp
M  +9    -9    core/dplugins/dimg/tiff/dimgtiffloader_load.cpp
M  +4    -4    core/dplugins/dimg/tiff/dimgtiffloader_save.cpp
M  +1    -2    core/dplugins/generic/tools/expoblending/manager/expoblendingthread.cpp
M  +2    -3    core/dplugins/generic/tools/panorama/tasks/preprocesstask.cpp
M  +5    -5    core/libs/dimg/dimg_fileio.cpp
M  +3    -3    core/libs/dimg/filters/icc/icctransform.cpp
M  +1    -2    core/libs/dimg/filters/icc/icctransformfilter.cpp
M  +2    -2    core/libs/dimg/filters/icc/icctransformfilter.h
M  +2    -2    core/libs/dimg/filters/rawprocessingfilter.cpp
M  +2    -4    core/libs/dimg/loaders/dimgloaderobserver.h
M  +1    -1    core/libs/threadimageio/fileio/loadingcache.h
M  +11   -22   core/libs/threadimageio/fileio/loadsavetask.cpp
M  +28   -28   core/libs/threadimageio/fileio/loadsavetask.h
M  +8    -8    core/libs/threadimageio/preview/previewtask.cpp
M  +3    -3    core/libs/threadimageio/thumb/thumbnailtask.cpp
M  +1    -2    core/utilities/queuemanager/manager/batchtool.cpp

https://invent.kde.org/kde/digikam/commit/8229ef53b49b0c62244a96cb8f7d06a7452b4ce3</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1895852</commentid>
    <comment_count>285</comment_count>
    <who name="">timokau</who>
    <bug_when>2019-12-10 22:35:49 +0000</bug_when>
    <thetext>Again after 3 successful runs, with 8229ef53b49b0c62244a96cb8f7d06a7452b4ce3:

&gt; digikam.dimg: &quot;/tmp/tmp.x7EaxS04Zv/Pictures/p/Kamera-Uploads/2014-03-14 12.09.33-2.jpg&quot; : &quot;JPEG&quot; file identified
&gt; digikam.general: Using  4  CPU core to run threads
&gt; [New Thread 0x7fff237fe700 (LWP 13164)]
&gt; digikam.general: Action Thread run  1  new jobs
&gt; [New Thread 0x7fff22ffd700 (LWP 13165)]
&gt; digikam.general: Check for finish:  51 packages, 0 infos to filter, hasFinished() false
&gt; digikam.general: Try to get preview from &quot;/tmp/tmp.x7EaxS04Zv/Pictures/p/Kamera-Uploads/2014-03-14 12.21.56.jpg&quot;
&gt; digikam.general: Preview quality:  1
&gt; digikam.database: &quot; ( ( (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=?  ) ) &quot;
&gt; digikam.database: Search query:
&gt;  &quot;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 (
&gt; ( ( (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=?  ) )  );&quot;
&gt;  (QVariant(int, 6), QVariant(int, 6), QVariant(QString, &quot;autodetectedPerson&quot;), QVariant(int, 6), QVariant(int, 6), QVariant(QString, &quot;autodetectedFace&quot;), QVariant(int, 6), QVariant(int, 6), QVariant(QString, &quot;tagRegion&quot;))
&gt; digikam.dimg: &quot;/tmp/tmp.x7EaxS04Zv/Pictures/p/Kamera-Uploads/2014-03-14 12.21.56.jpg&quot; : &quot;JPEG&quot; file identified
&gt; digikam.database: Search result: 3849
&gt; Premature end of JPEG file
&gt; digikam.general: Cancel Main Thread
&gt; digikam.general: One job is done
&gt; digikam.general: Cancel Main Thread
&gt; digikam.metaengine: Exif color-space tag is sRGB. Using default sRGB ICC profile.
&gt; digikam.facesengine: Good rect =  QRect(139,98 41x54) , conf =  0.942572
&gt; digikam.general: Found 1 faces in &quot;2013-12-21 21.29.17-1.jpg&quot; QSize(2448, 3264) QSize(2448, 3264)
&gt; digikam.general: Removing old entries (FaceTagsIface(1, image 4610, tag 6, regionQRect(1110,1066 446x588))
&gt; [Thread 0x7fff237fe700 (LWP 13164) exited]
&gt; [Thread 0x7fff22ffd700 (LWP 13165) exited]
&gt; 
&gt; Thread 20650 &quot;Thread (pooled)&quot; received signal SIGSEGV, Segmentation fault.
&gt; [Switching to Thread 0x7fff3cff9700 (LWP 773)]
&gt; 0x00007ffff4ba17e0 in operator&lt;(QString const&amp;, QString const&amp;) () from /nix/store/683732s7dq6bxrl267lcadl5lvn6i4nh-qtbase-5.12.0/lib/libQt5Core.so.5
&gt; (gdb) bt
&gt; #0  0x00007ffff4ba17e0 in operator&lt;(QString const&amp;, QString const&amp;) () from /nix/store/683732s7dq6bxrl267lcadl5lvn6i4nh-qtbase-5.12.0/lib/libQt5Core.so.5
&gt; #1  0x00007ffff78abac9 in qMapLessThanKey&lt;QString&gt; (key2=..., key1=...) at /nix/store/hy0z060pmjwrdrbb0qrii7hnwif8cz1y-qtbase-5.12.0-dev/include/QtCore/qmap.h:71
&gt; #2  QMap&lt;QString, QVariant&gt;::insert (avalue=..., akey=..., this=&lt;optimized out&gt;) at /nix/store/hy0z060pmjwrdrbb0qrii7hnwif8cz1y-qtbase-5.12.0-dev/include/QtCore/qmap.h:713
&gt; #3  Digikam::DImg::setAttribute (this=&lt;optimized out&gt;, key=..., value=...) at /tmp/tmp.x7EaxS04Zv/digikam/core/libs/dimg/dimg_props.cpp:207
&gt; #4  0x00007ffff78a6cd6 in Digikam::DImg::getUniqueHashV2 (this=0x2ad5a18) at /tmp/tmp.x7EaxS04Zv/digikam/core/libs/dimg/dimg_metadata.cpp:93
&gt; #5  0x00007ffff78a849d in Digikam::DImg::createHistoryImageId (this=&lt;optimized out&gt;, filePath=..., type=type@entry=Digikam::HistoryImageId::Current) at /tmp/tmp.x7EaxS04Zv/digikam/core/libs/dimg/dimg_metadata.cpp:312
&gt; #6  0x00007ffff7768995 in Digikam::DImgLoader::readMetadata (this=0x7fff0c057a80, filePath=...) at /tmp/tmp.x7EaxS04Zv/digikam/core/libs/dimg/loaders/dimgloader.cpp:223
&gt; #7  0x00007fffb209843c in DigikamJPEGDImgPlugin::DImgJPEGLoader::load (this=0x7fff0c057a80, filePath=..., observer=0x2ad5840) at /tmp/tmp.x7EaxS04Zv/digikam/core/dplugins/dimg/jpeg/dimgjpegloader_load.cpp:56
&gt; #8  0x00007ffff78a2d6f in Digikam::DImg::load (this=this@entry=0x2ad5a18, filePath=..., loadFlagsInt=loadFlagsInt@entry=63, observer=observer@entry=0x2ad5840, rawDecodingSettings=...) at /tmp/tmp.x7EaxS04Zv/digikam/core/libs/dimg/dimg_fileio.cpp:138
&gt; #9  0x00007ffff78a4010 in Digikam::DImg::load (this=this@entry=0x2ad5a18, filePath=..., observer=observer@entry=0x2ad5840, rawDecodingSettings=...) at /tmp/tmp.x7EaxS04Zv/digikam/core/libs/dimg/dimg_fileio.cpp:63
&gt; #10 0x00007ffff7967f5b in Digikam::PreviewLoadingTask::execute (this=0x2ad5830) at /tmp/tmp.x7EaxS04Zv/digikam/core/libs/threadimageio/preview/previewtask.cpp:286
&gt; #11 0x00007ffff797dc3e in Digikam::LoadSaveThread::run (this=0x38f4ea0) at /tmp/tmp.x7EaxS04Zv/digikam/core/libs/threadimageio/fileio/loadsavethread.cpp:133
&gt; #12 0x00007ffff799e2ee in Digikam::DynamicThread::Private::run (this=0x34a3680) at /tmp/tmp.x7EaxS04Zv/digikam/core/libs/threads/dynamicthread.cpp:183
&gt; #13 0x00007ffff4b1d7d2 in ?? () from /nix/store/683732s7dq6bxrl267lcadl5lvn6i4nh-qtbase-5.12.0/lib/libQt5Core.so.5
&gt; #14 0x00007ffff4b19062 in ?? () from /nix/store/683732s7dq6bxrl267lcadl5lvn6i4nh-qtbase-5.12.0/lib/libQt5Core.so.5
&gt; #15 0x00007ffff44e4ef7 in start_thread () from /nix/store/iykxb0bmfjmi7s53kfg6pjbfpd8jmza6-glibc-2.27/lib/libpthread.so.0
&gt; #16 0x00007ffff441a22f in clone () from /nix/store/iykxb0bmfjmi7s53kfg6pjbfpd8jmza6-glibc-2.27/lib/libc.so.6
&gt; (gdb)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1895911</commentid>
    <comment_count>286</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2019-12-11 11:42:26 +0000</bug_when>
    <thetext>Git commit 95594f2438a4f6f80340e70b20964e3685b4e235 by Maik Qualmann.
Committed on 11/12/2019 at 11:41.
Pushed by mqualmann into branch &apos;master&apos;.

try with a QMutex for DImg data

M  +4    -0    core/libs/dimg/dimg_data.cpp
M  +10   -10   core/libs/dimg/dimg_metadata.cpp
M  +2    -0    core/libs/dimg/dimg_p.h
M  +31   -11   core/libs/dimg/dimg_props.cpp
M  +5    -3    core/libs/dimg/dimg_transform.cpp
M  +2    -0    core/libs/dimg/loaders/dimgloader.cpp

https://invent.kde.org/kde/digikam/commit/95594f2438a4f6f80340e70b20964e3685b4e235</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1896033</commentid>
    <comment_count>287</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2019-12-12 06:48:57 +0000</bug_when>
    <thetext>*** Bug 415046 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1896403</commentid>
    <comment_count>288</comment_count>
    <who name="">timokau</who>
    <bug_when>2019-12-13 23:25:13 +0000</bug_when>
    <thetext>I think that just might have fixed it. I just completed the 10th (!) successful scan with 95594f2438a4f6f80340e70b20964e3685b4e235. I don&apos;t think I ever had more than 3 scans without a crash before.

Since testing is quite time consuming (~2h per run) and the crash isn&apos;t entirely reliably reproducible, its difficult to be entirely certain. But I think it is fixed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1896458</commentid>
    <comment_count>289</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2019-12-14 14:21:52 +0000</bug_when>
    <thetext>Timokau, thank you very much for testing these many patches. We have made digiKam a lot more stable and can now close some bug reports.

Maik</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1896462</commentid>
    <comment_count>290</comment_count>
    <who name="">timokau</who>
    <bug_when>2019-12-14 14:38:49 +0000</bug_when>
    <thetext>My pleasure! Thank you for staying on this for so long Maik. I&apos;m looking forward to digikam 7.0 :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1896476</commentid>
    <comment_count>291</comment_count>
    <who name="">caulier.gilles</who>
    <bug_when>2019-12-14 15:56:46 +0000</bug_when>
    <thetext>Congratulations Maik for your effort. 

So we can plan a first official 7.0.0-beta1 release before Christmas. 

Let&apos;s me hear the best date to plan...

Gilles</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1896481</commentid>
    <comment_count>292</comment_count>
    <who name="Maik Qualmann">metzpinguin</who>
    <bug_when>2019-12-14 16:42:05 +0000</bug_when>
    <thetext>Hi Gilles,

I think if the Beta1 appears shortly before or on the 24th, that would be a good date ((:-))

Maik</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1896482</commentid>
    <comment_count>293</comment_count>
    <who name="">caulier.gilles</who>
    <bug_when>2019-12-14 16:43:25 +0000</bug_when>
    <thetext>Ok, i will plan the release next week to be ready for next week end.

Gilles</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1898803</commentid>
    <comment_count>294</comment_count>
    <who name="">caulier.gilles</who>
    <bug_when>2019-12-27 13:33:48 +0000</bug_when>
    <thetext>timokau,

First i wish you an happy new year 2020.

I would to ask you if it&apos;s possible to check the current implementation of digiKam with the Similarities feature (Find duplicates).
I perform currently a huge bug triage, and i see a lots of reports about memory leak which crash digiKam while populating the database with Haar fingerprints with huge collection.

I tried to reproduce the problem here without success (ouff: thanks to huge Maik hack...). But as we know that your system is very sensible to this kind of dysfunction, this can be a good double check.  

Thanks in advance

Gilles Caulier</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1902731</commentid>
    <comment_count>295</comment_count>
    <who name="">timokau</who>
    <bug_when>2020-01-15 08:20:07 +0000</bug_when>
    <thetext>Sorry for the slow reply. A happy new year to you too :)

Unfortunately I don&apos;t currently have access to the computer I usually used to reproduce this issue. I&apos;m not sure when exactly I&apos;ll have access again. I&apos;ll reproduce it then if its still relevant, but it might take some time.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>115778</attachid>
            <date>2018-10-20 11:38:13 +0000</date>
            <delta_ts>2018-10-20 11:38:13 +0000</delta_ts>
            <desc>memory consumed during face detection until crash</desc>
            <filename>digikam-memory.png</filename>
            <type>image/png</type>
            <size>52470</size>
            <attacher>timokau</attacher>
            
              <data encoding="base64">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
nHx9fS2uHTt2rNq0aaM1a9Zo7NixkqSjR48qKChI0dHRWrx4sa5cuaLOnTsrLS3N4tpt27ZpwYIF
ev3117VkyRLt3btXAwYMyDe/qVOnqmbNmlq1apXGjx+v0NBQRUREGPWHDh1S586ddenSJX3wwQd6
7733tH//fvXt29f4ui9evKiePXsqIyNDy5cv14svvqjg4GClpqbe8D4BAADg740tsQCAUvn999+1
adMmtW3bVpI0c+ZMXbhwQXv27FHdunUlSZ07d5anp6eWLl2qSZMmaefOnerRo4eefPJJox9/f/8y
zaNJkyZq1KiRqlevXuA21piYGGOFVq4zZ84oOjpa/+///T9JUvv27XXHHXfovffe04QJEwod6/z5
84qJiVGdOnUkSSdOnNDkyZMttmV+8803qlGjhtF3QcLDw+Xk5KSYmBjVrFlTklSrVi099thjRX6t
8+bN01133aUVK1bIwcFBDz/8sP78809Nnz69yOtyZWZmql+/fjp69Ki2bt2qxo0bG3WzZs0yPr96
9aq6d++u+Ph4ffjhhxZ1Z8+e1bZt23THHXdIkvbu3avXXntNy5Yt08iRIyXlBG19+vTR//73P911
112FzsfX11cmk0nTp0/X4cOHdfz4cT3xxBMymUyaNGmSfvrpJ507dy5fYBcQEKA5c+ZYlL3xxhvG
51euXFH37t3VoEEDRUdHG/OSpFOnTun77783tivnBs1fffWVHn74YaPd3XffrXfeeUeS1LNnT506
dUovv/yyJk6cKEdHR4WGhqphw4Zav369sRXc29tbd955p9atW6c+ffooKipKp06d0o4dO9SkSRNJ
OasffXx8Cv2eAAAAABIr7AAApdS4cWMjrJOkTZs2qXv37nJ1dVVWVpaysrLk4uKi9u3bG1sr27Zt
q3Xr1mn27NnauXOnrly5YtU5Hj9+XLt378632q1BgwYWgZqHh4fat2+vnTt3Ftlfhw4djLBOuvaM
ubxbKmNiYtSzZ09VqVKl0H527typ7t27G2GdVLzgMj4+Xn379rU4PKNfv343vE6SLly4oIcfflgn
T57Uli1bLMI6STpw4IAGDhwod3d3ValSRVWrVlViYqJ++eUXi3aenp5GWCfJWKH34IMP5ivL/b5c
vXrVeE9kZWUZK9B8fX0VFxenq1evauvWrfL29lbfvn2NFXZbt25V3bp18z3Lr6DVi9u3b1f37t1V
r1493XLLLapZs6YyMjLyzb9du3YWzxbs3LmzGjRokO/eDxw40OK1v7+/fvvtN2ML9KZNmzRw4EA5
OjoaX5eXl5c8PT2N9/vOnTvVvn17I6zLOx4AAABQFAI7AECpuLu7W7w+c+aMPvnkE1WtWtXi47vv
vtORI0ckSWPGjNHLL7+slStXqmPHjnJ3d9fMmTOtFtytW7dOt99+u1q0aGFRXlBg0qBBAx0/frzI
/tzc3Cxe566syruVNnd1VVFOnDiRbw41atSQs7PzDa+79dZbLcquf12Y3377Td9//738/f3z3bv0
9HT16NFDR44c0euvvy6TyaT4+Hi1adMm3zbhwr4Hecuv/76MGTPG4j2xbNkySVKXLl1kNpu1b98+
mUwm+fr6qnPnzjpx4oQOHz4sk8kkHx+ffKf7Xj//1NRU9ejRQ9nZ2XrnnXcUFxen+Ph4NWjQIN/8
i3vvr2+X+zq33ZkzZzRv3rx87/fDhw8b7/eC7nNhcwAAAADyYkssAKBUrg9R6tatq379+lk8Py6X
i4uLJMnR0VGTJ0/W5MmTdeTIEX300Ud64YUX1LhxY02YMEFOTk6Scg5FyOvcuXOlmmNhhz+cOnWq
wLK77767VOPk2rt3r44dO2axtbIgDRs2zDeHixcv5jtso6DrTp8+bVF2/evC/POf/9Qzzzyj0aNH
q2HDhpo4caJRt23bNh09elQbN27UnXfeaZRf//y30goJCTEOh5AkLy8vSTnbTuvWrSuTyaStW7fq
lVdekaurq7y9vWUymWQymTRlypR8/V3/3vvqq6+UmZmp6Oho1apVS5KUlZWls2fP5ru2sHvfqFGj
Itvlvs5tV7duXQ0cOFDjxo3L11/9+vUl5dyv//3vf8WaAwAAAJAXgR0AoFz861//0sqVK3X33Xcb
z3MrStOmTfXcc88pKirKOKE1d+vggQMH1LlzZ0k5Bz2cP3++yL6qVauWbyXV5cuXtWnTJq1atSpf
+9znmOVui01NTdWPP/6owMDAG3+hRYiJiVHHjh2NwKYwHTp00NKlS5WZmWlsi/38889v2H+HDh30
5Zdf6uWXXzZCq5KcOjpixAhlZGQoKChILi4uxjPzcg8FqV69utH2+++/V3Jystq3b1/s/gvj6ekp
T0/PfOUODg7q3LmzVq5cqUOHDqlLly6SclbeLV26VMePH8/3/LqCXLx4UY6Ojrrllms/1qxcuVJZ
WVn52v74449KTU3VbbfdJkmKi4vTqVOndN9991m0W716tUWo+fnnn6tRo0bGe/Rf//qX9u3bp/bt
2+cLEHN16NBBH330kY4ePWpclzseAAAAUBQCOwBAuZgyZYo+/PBDPfjgg3rqqafUuHFj43lpPj4+
evTRR/XEE0+obt266tSpk2rXrq3vvvtOBw8e1Lx58yRJ9913nxo3bqynn35ac+bM0dmzZ/Xqq69a
nPBakDvvvFMnT57Ue++9p1atWql+/fo6dOiQrl69qq5du+ZrX79+fY0YMUJz5sxRjRo1NGvWLDVo
0ECjR48u0/egsBV9zZo1U9euXbVkyRJJUnBwsCIiIuTn56cpU6bot99+0yuvvHLDoHP69Onq2LGj
hg4dqsDAQB04cECLFy+WlLN6sTgmTpyojIwMBQYGytnZWQMGDFCnTp3k7Oys8ePHa9q0aTp69KhC
QkLyPefOGrp06aKpU6eqRYsWxlZRX19fvfXWW6pZs6batWt3wz4efPBBXblyRYGBgRo7dqz279+v
//znP/m270o521H9/PwUEhKiS5cuafr06WrXrl2+VZH79+/XE088oUGDBmnr1q1asmSJ3nzzTeP7
HBISovvuu099+vTRmDFjVL9+fR07dkwbN27U6NGj1a1bNwUGBmru3Lnq06ePQkJCdPHiRc2cOfOG
gS4AAADAM+wAAOWifv362r59u+68805NnjxZPXr00LRp05SWliZvb29J0v3336+tW7cqMDBQvXv3
1urVq7V48WINGDBAUs5KudWrV8vR0VGPPPKI5s+fr8jISIuDHgoyePBgjR49WtOmTVOHDh0UEhKi
mJgYPfTQQxarxnJ5eHjotddeU0hIiIYOHSpXV1d9/fXXxpbc0jh79qy2b99eYGCXlZVl8Zy+xo0b
a926dTpz5owGDRqkRYsW6cMPP7Q4hKIg9957rz7++GPt2rVLAwYM0GeffabIyEhJumGomdfUqVM1
Y8YMDR06VBs3bpS7u7s+/fRTnThxQv3791d4eLjefvtt4/AIa8pdQZe7ui5vWceOHVW1atUb9tG6
dWtFRUVpx44d8vPz0/Lly/Xpp5+qdu3a+dref//9evLJJxUcHKyxY8eqVatW+uKLL/K1e/XVV3X+
/HkNGjRI77zzjmbOnGmxrbd58+bavn27atasqccff1y9evXS7NmzVb16deP7VrNmTX399deqVauW
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
wborASlF8ZsJILskbCJbzu+PfOc2Q5ZJyDKTzOv5eJxHknvu3PnMPTNzJ585S7a1rbrFGb7//nut
WrVKUlkv0YSEhGpjqU6LFi3Url07lZaWunxONpQDBw7UaLqImvZi3r59u4qKirR9+3aNGDFCTz31
VKX7jR49Wrm5ucrPz9fNN998QbEPHjxYr7/++gXdFgAAj+fujKEnat++vTlz5owxxpjg4GBre2Bg
YK2Os3r1avPqq6+au+++u0Kvgdtvv91cd911pri42Gzfvt2Eh4ebF154od7qXaHpy9RHD7uCggLr
W94lS5Z4RA87x+TuVZWIiAgzb948ExwcXKGuW7duNf5WOyUlxbrP2vak8cTSmObPn29CQ0Pd/pib
UklKSqpwHh2vw8LCQqtn0Jo1azzidehuTbGHXXWvyeLiYpOWllYvbVpcXGyys7NNamqq0/117drV
pKammvnz5zv1Sj6fq95VNekZ2liLTixatKhG5zolJcXk5+eb2bNnW9tycnJMbm6uyc7ONkOHDnV5
jISEhEpjqUnvqZiYGKfbuOox63jtn99DOSUlxWWv5fPjdJyr8j3cAgMDq7x9z549zcyZM50W2mjZ
sqVV36JFiwt6vg8ePLjK60J1Pf7qu1TVjjXtxZybm2uksp6mru6rro8rLi7OzJ8/32vf689/nwQA
NC+8y1eie/fuZv/+/caY/ybsdu3aZXr27HlBx0tLS3NK2J04ccL4+/ubzz77zNr2+OOPm5/97Gf1
Ul8TXODL1OUf2rlz51b7IXLu3Ln1GGntlF91zfFPxKJFi0x+fr7x8/NrtA/9zaU4hlXVJ3c/pqZa
YmNjTdu2bU1ubq5JSEhwOVzP01cPzMvLs1Yiz83Nrddje0LCLjc316Smpl7QsO/hw4c7Hau+hzy7
SiJV99ypjxVKq2yf4cPLSh25+uKmtmXYsGHW7wMGDLB+nzp1qsnNzTV5eXlOw2LtdrtJSEgwdrvd
FBcXm+Tk5Fqdsy+++KLK9i6fqB84cKDTcVJSUkxBQYF1DXRc8zp27Ghtq2r47vTp063jjBw5sspY
MzMzK8RRvj43N9e0a9fO+jsoKMgpoVe+tGrVynTv3t3k5eWZoKAgt7/HSlUn7LZs2VJlmxQUFJjc
3FyTm5trpk2bVqv7y8zMdFrV/kKKp7/XNxSJz/MA0JzxLl+Jhx56yCQmJprNmzcbm81mtm/fbsaM
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
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>115962</attachid>
            <date>2018-10-29 13:36:03 +0000</date>
            <delta_ts>2018-10-29 13:36:03 +0000</delta_ts>
            <desc>Suspicious image</desc>
            <filename>IMG-20130707-WA0000.jpg</filename>
            <type>image/jpeg</type>
            <size>81467</size>
            <attacher>timokau</attacher>
            
              <data encoding="base64">/9j/4AAQSkZJRgABAQAAAQABAAD/4QDARXhpZgAASUkqAAgAAAAFAAsAAgAOAAAASgAAADEBAgAP
AAAAWgAAADIBAgAUAAAAagAAAGmHBAABAAAAkgAAABvHAgAUAAAAfgAAAAAAAABkaWdpS2FtLTUu
OS4wAAAAZGlnaUthbS00LjEyLjAAADIwMTQ6MDQ6MTcgMTQ6NDQ6MjkAMjAxNDowNDoxNyAxNDo0
NDoyOQABAAOQAgAUAAAApAAAAAAAAAAyMDE0OjA0OjE3IDE0OjQ0OjI5AP/hDatodHRwOi8vbnMu
YWRvYmUuY29tL3hhcC8xLjAvADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6
cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1w
dGs9IlhNUCBDb3JlIDQuNC4wLUV4aXYyIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3
LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6
YWJvdXQ9IiIgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iIHhtbG5z
OnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1sbnM6ZXhpZj0iaHR0cDovL25z
LmFkb2JlLmNvbS9leGlmLzEuMC8iIHhtbG5zOnBob3Rvc2hvcD0iaHR0cDovL25zLmFkb2JlLmNv
bS9waG90b3Nob3AvMS4wLyIgeG1sbnM6ZGlnaUthbT0iaHR0cDovL3d3dy5kaWdpa2FtLm9yZy9u
cy8xLjAvIiB4bWxuczp2aWRlbz0iaHR0cDovL3d3dy52aWRlby8iIHhtbG5zOm13Zy1ycz0iaHR0
cDovL3d3dy5tZXRhZGF0YXdvcmtpbmdncm91cC5jb20vc2NoZW1hcy9yZWdpb25zLyIgeG1sbnM6
TVA9Imh0dHA6Ly9ucy5taWNyb3NvZnQuY29tL3Bob3RvLzEuMi8iIHhtbG5zOk1QUkk9Imh0dHA6
Ly9ucy5taWNyb3NvZnQuY29tL3Bob3RvLzEuMi90L1JlZ2lvbkluZm8jIiB0aWZmOlNvZnR3YXJl
PSJkaWdpS2FtLTUuOS4wIiB0aWZmOkRhdGVUaW1lPSIyMDE0LTA0LTE3VDE0OjQ0OjI5IiB4bXA6
Q3JlYXRvclRvb2w9ImRpZ2lLYW0tNC4xMi4wIiB4bXA6Q3JlYXRlRGF0ZT0iMjAxNC0wNC0xN1Qx
NDo0NDoyOSIgeG1wOk1ldGFkYXRhRGF0ZT0iMjAxNC0wNC0xN1QxNDo0NDoyOSIgeG1wOk1vZGlm
eURhdGU9IjIwMTQtMDQtMTdUMTQ6NDQ6MjkiIGV4aWY6RGF0ZVRpbWVPcmlnaW5hbD0iMjAxNC0w
NC0xN1QxNDo0NDoyOSIgcGhvdG9zaG9wOkRhdGVDcmVhdGVkPSIyMDE0LTA0LTE3VDE0OjQ0OjI5
IiBwaG90b3Nob3A6VXJnZW5jeT0iMCIgZGlnaUthbTpQaWNrTGFiZWw9IjAiIGRpZ2lLYW06Q29s
b3JMYWJlbD0iMCIgdmlkZW86RGF0ZVRpbWVPcmlnaW5hbD0iMjAxNC0wNC0xN1QxNDo0NDoyOSIg
dmlkZW86RGF0ZVVUQz0iMjAxNC0wNC0xN1QxNDo0NDoyOSIgdmlkZW86TW9kaWZpY2F0aW9uRGF0
ZT0iMjAxNC0wNC0xN1QxNDo0NDoyOSI+IDxtd2ctcnM6UmVnaW9ucyByZGY6cGFyc2VUeXBlPSJS
ZXNvdXJjZSI+IDxtd2ctcnM6UmVnaW9uTGlzdD4gPHJkZjpCYWcvPiA8L213Zy1yczpSZWdpb25M
aXN0PiA8L213Zy1yczpSZWdpb25zPiA8TVA6UmVnaW9uSW5mbyByZGY6cGFyc2VUeXBlPSJSZXNv
dXJjZSI+IDxNUFJJOlJlZ2lvbnM+IDxyZGY6QmFnLz4gPC9NUFJJOlJlZ2lvbnM+IDwvTVA6UmVn
aW9uSW5mbz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+ICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPD94cGFja2V0
IGVuZD0idyI/Pv/tAFhQaG90b3Nob3AgMy4wADhCSU0EBAAAAAAAOxwBWgADGyVHHAJBAAdkaWdp
S2FtHAJGAAU1LjkuMBwCNwAIMjAxNDA0MTccAjwACzE0NDQyOSswMDAwAP/bAEMABgQFBgUEBgYF
BgcHBggKEAoKCQkKFA4PDBAXFBgYFxQWFhodJR8aGyMcFhYgLCAjJicpKikZHy0wLSgwJSgpKP/b
AEMBBwcHCggKEwoKEygaFhooKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgoKCgo
KCgoKCgoKCgoKP/AABEIAd8DIAMBIgACEQEDEQH/xAAfAAABBQEBAQEBAQAAAAAAAAAAAQIDBAUG
BwgJCgv/xAC1EAACAQMDAgQDBQUEBAAAAX0BAgMABBEFEiExQQYTUWEHInEUMoGRoQgjQrHBFVLR
8CQzYnKCCQoWFxgZGiUmJygpKjQ1Njc4OTpDREVGR0hJSlNUVVZXWFlaY2RlZmdoaWpzdHV2d3h5
eoOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4eLj
5OXm5+jp6vHy8/T19vf4+fr/xAAfAQADAQEBAQEBAQEBAAAAAAAAAQIDBAUGBwgJCgv/xAC1EQAC
AQIEBAMEBwUEBAABAncAAQIDEQQFITEGEkFRB2FxEyIygQgUQpGhscEJIzNS8BVictEKFiQ04SXx
FxgZGiYnKCkqNTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqCg4SFhoeIiYqS
k5SVlpeYmZqio6Slpqeoqaqys7S1tre4ubrCw8TFxsfIycrS09TV1tfY2dri4+Tl5ufo6ery8/T1
9vf4+fr/2gAMAwEAAhEDEQA/APn8EgED9KVc9R2o4z7UHC+3rWlzFAG5pASc8YFKRlzxgdqQjDdR
VabCs7h8xBOKaMAHPWgEkknpSEE80dLFLRig9QKQg5oAz93tSqcEkdaWqC4m4c4zTd+3pSofmPTB
p2FBPv7UlpoxruhgfP8AhSBieQCKU8cY4pcgCi9tgsnuNVs9c0gIGQKO5xSA+/WnbuSmhQc8cU0k
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
RxikgEFGaOlGOKYH/9k=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>119667</attachid>
            <date>2019-04-27 11:25:30 +0000</date>
            <delta_ts>2019-04-27 11:25:30 +0000</delta_ts>
            <desc>clang 8 compilation trace</desc>
            <filename>digiKam6.2.0-clang8-compil-trace.tar.gz</filename>
            <type>application/x-gzip</type>
            <size>45098</size>
            <attacher>caulier.gilles</attacher>
            
              <data encoding="base64">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
v/8PZgUmOAAmCQA=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>124119</attachid>
            <date>2019-11-25 23:51:09 +0000</date>
            <delta_ts>2019-11-25 23:51:09 +0000</delta_ts>
            <desc>digikam resource usage with b50ee49d2455c936f02178d59389669e0796e506</desc>
            <filename>digikam-resources-b50ee49d2455c936f02178d59389669e0796e506.png</filename>
            <type>image/png</type>
            <size>51690</size>
            <attacher>timokau</attacher>
            
              <data encoding="base64">iVBORw0KGgoAAAANSUhEUgAAAoAAAAHgCAYAAAA10dzkAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz
AAAPYQAAD2EBqD+naQAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjEsIGh0
dHA6Ly9tYXRwbG90bGliLm9yZy8QZhcZAAAgAElEQVR4nOydd5gUxdbG356d3SWvBGHJiAKCgCLZ
rAQRMVwDelXM6aIihqsicgW9BPWqKHBRERVExYjfVREJAioKkgVBRQUkLJldwgK7M9PfHzU1091T
nbsn7Jzf88wzMz3VVdVhut8+VeccSZZlGQRBEARBEETWEEh1BwiCIAiCIIjkQgKQIAiCIAgiyyAB
SBAEQRAEkWWQACQIgiAIgsgySAASBEEQBEFkGSQACYIgCIIgsgwSgARBEARBEFkGCUCCIAiCIIgs
gwQgQRAEQRBElkECkCAIgiAIIssgAUgQBEEQBJFlkAAkCIIgCILIMkgAEgRBEARBZBkkAAmCIAiC
ILIMEoAEQRAEQRBZBglAgiAIgiCILIMEIEEQBEEQRJZBApAgCIIgCCLLIAFIEARBEASRZZAAJAiC
IAiCyDJIABIEQRAEQWQZJAAJgiAIgiCyDBKABEEQBEEQWQYJQIIgCIIgiCyDBCBBEARBEESWQQKQ
IAiCIAgiyyABSBAEQRAEkWWQACQIgiAIgsgySAASBEEQBEFkGSQACYIgCIIgsgwSgARBEARBEFkG
CUCCIAiCIIgsgwQgQRAEQRBElkECkCAIgiAIIssgAUgQBEEQBJFlkAAkCIIgCILIMkgAEgRBEARB
ZBkkAAmCIAiCILIMEoAEQRAEQRBZBglAgiAIgiCILIMEIEEQBEEQRJZBApAgCIIgCCLLIAFIEARB
EASRZZAAJAiCIAiCyDJIABIEQRAEQWQZJAAJgiAIgiCyDBKABEEQBEEQWQYJQIIgCIIgiCyDBCBB
EARBEESWQQKQIAiCIAgiyyABSBAEQRAEkWWQACQIgiAIgsgySAASBEEQBEFkGSQACYIgCIIgsgwS
gARBEARBEFkGCUCCIAiCIIgsI5jqDmQyoVAIK1euRL169RAIkJYmCIIgiEwgEolg586d6NChA4LB
7JRC2bnVHrFy5Up06dIl1d0gCIIgCMIBP/74Izp37pzqbqQEEoAuqFevHgB2AtWvX9/TukOhEObN
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
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>124143</attachid>
            <date>2019-11-27 15:33:26 +0000</date>
            <delta_ts>2019-11-27 15:33:26 +0000</delta_ts>
            <desc>digikam resource usage with 105ccfd47cc8ac73037eac0d6873581a9e49c1aa</desc>
            <filename>digikam-resources-105ccfd47cc8ac73037eac0d6873581a9e49c1aa.png</filename>
            <type>image/png</type>
            <size>53365</size>
            <attacher>timokau</attacher>
            
              <data encoding="base64">iVBORw0KGgoAAAANSUhEUgAAAoAAAAHgCAYAAAA10dzkAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz
AAAPYQAAD2EBqD+naQAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjEsIGh0
dHA6Ly9tYXRwbG90bGliLm9yZy8QZhcZAAAgAElEQVR4nOzdeXwTdf4/8FfapBe0gVJ7IBVRKVIL
ioBQcBUpt9wqKm4XPNBVRFl0dcF1re4CyiqwX3CRVcQDsP482BWFCugCIodcVQTECxDYlgK2pS09
cv3++GSSyeRokuZkXs/HI48kk8nMfHLNO+/PpbFYLBYQERERkWrEhPsAiIiIiCi0GAASERERqQwD
QCIiIiKVYQBIREREpDIMAImIiIhUhgEgERERkcowACQiIiJSGQaARERERCrDAJCIiIhIZRgAEhER
EakMA0AiIiIilWEASERERKQyDACJiIiIVIYBIBEREZHKMAAkIiIiUhkGgEREREQqwwCQiIiISGUY
ABIRERGpDANAIiIiIpVhAEhERESkMgwAiYiIiFSGASARERGRyjAAJCIiIlIZBoBEREREKsMAkIiI
iEhlGAASERERqQwDQCIiIiKVYQBIREREpDIMAImIiIhUhgEgERERkcowACQiIiJSGQaARERERCrD
AJCIiIhIZRgAEhEREakMA0AiIiIilWEASERERKQyDACJiIiIVIYBIBEREZHKMAAkIiIiUhkGgERE
REQqwwCQiIiISGUYABIRERGpDANAIiIiIpVhAEhERESkMgwAiYiIiFSGASARERGRyjAAJCIiIlIZ
BoBEREREKsMAkIiIiEhlGAASERERqQwDQCIiIiKVYQBIREREpDIMAImIiIhUhgEgERERkcowACQi
IiJSGQaARERERCqjDfcBRDOj0Yh9+/YhIyMDMTGMpYmIiKKB2WzGqVOn0KNHD2i16gyF1FnqANm3
bx+uu+66cB8GERER+eGrr75C7969w30YYcEAsAUyMjIAiA9QVlZWQLdtNBrx2WefoaCgQFX/TtRa
bkC9ZVdruQH1ll2t5QbUW/ZIK3dZWRmuu+4623lcjcL/LkQxqdo3KysLHTp0COi2DQYD0tLScPHF
F0On0wV025FMreUG1Ft2tZYbUG/Z1VpuQL1lj9Ryq7n5lnpLTkRERKRSDACJiIiIVIYBIBEREZHK
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
hQAAAABJRU5ErkJggg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>124172</attachid>
            <date>2019-11-28 21:25:46 +0000</date>
            <delta_ts>2019-11-28 21:25:46 +0000</delta_ts>
            <desc>here&apos;s one additional trace taken during the last run</desc>
            <filename>digikam-resources.png</filename>
            <type>image/png</type>
            <size>49117</size>
            <attacher>timokau</attacher>
            
              <data encoding="base64">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
DlauXIno6Gi5zNtvv41HH30Uo0ePBgCMHz8eixcv9vtrYgBIRERE5EVeXh7y8vJUnzcYDCgsLFQc
RSyJi4vDokWLsGjRItUySUlJWLNmTUuqqgn7ABIRERFFGAaARERERBGGASARERFRhGEASERERBRh
GAASERERRRgGgEREREQRhgEgERERUYRhAEhEREQUYRgAEhEREUUYBoBEREREEYYBIBEREVGEYQBI
REREFGEYABIRERFFGAaARERERBGGASARERFRhGEASERERBRhGAASERERRRgGgEREREQRhgEgERER
UYRhAEhEREQUYRgAEhEREUUYBoBEREREEYYBIBEREVGEYQBIREREFGEYABIRERFFGAaARERERBGG
ASARERFRhAn7AHD+/PkwGAwoKCiQtwmCgMLCQqSnpyM+Ph4jRozAoUOHnPZraGjAjBkzkJycjISE
BIwfPx6nTp0KdvWJiIiIgi6sA8C9e/di2bJlyMrKctq+YMECLFy4EIsXL8bevXuRlpaG3Nxc1NbW
ymUKCgqwfv16FBUVYefOnairq0NeXh6ampqC/TKIiIiIgipsA8C6ujpMnjwZy5cvR6dOneTtgiDg
9ddfx9y5c3HXXXchMzMTq1atwuXLl7F27VoAQE1NDVasWIFXX30Vo0aNwoABA7BmzRocOHAAmzdv
bq2XRERERBQUxtaugK8eeeQR3H777Rg1ahRefPFFefvx48dRUVGB0aNHy9tiY2Nx6623YteuXZg+
fTpKS0thsVicyqSnpyMzMxO7du3CmDFjFM/Z0NCAhoYG+bGUUbRarbBYLH59fdLx/H3ccMPrYMdr
YcdrYcdrYcdrYcdrIVK7DlartTWqE1LCMgAsKirC559/jr1797o9V1FRAQBITU112p6amooTJ07I
ZWJiYpwyh1IZaX8l8+fPx/PPP++2fcuWLUhOTtb9OrQoKSkJyHHDDa+DHa+FHa+FHa+FHa+FHa+F
yPU6nD17tpVqEjrCLgA8efIkHnvsMWzatAlxcXGq5QwGg9NjQRDctrnyVmbOnDl44okn5MenT59G
RkYGcnJy0LVrV42vQBuLxYKSkhLk5ubCZDL59djhhNfBjtfCjtfCjtfCjtfCjtdCpHYdTp8+3Yq1
Cg1hFwCWlpaiqqoKAwcOlLc1NTVhx44dWLx4MY4ePQpAzPJ16dJFLlNVVSVnBdPS0tDY2Ijq6mqn
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
</data>

          </attachment>
      

    </bug>

</bugzilla>