Bug 271710

Summary: crash when starting after adding 1500 pic + thumbnails.db is 3.9 GB with 4 GB storage capacity
Product: [Applications] digikam Reporter: Axel Krebs <axel.krebs>
Component: Database-ThumbsAssignee: Digikam Developers <digikam-bugs-null>
Status: RESOLVED FIXED    
Severity: crash CC: caulier.gilles
Priority: NOR    
Version: 1.9.0   
Target Milestone: ---   
Platform: Ubuntu   
OS: Linux   
Latest Commit: Version Fixed In: 2.0.0
Sentry Crash Report:

Description Axel Krebs 2011-04-25 21:00:45 UTC
Application: digikam (2.0.0-beta4)
KDE Platform Version: 4.6.2 (4.6.2)
Qt Version: 4.7.0
Operating System: Linux 2.6.35-28-generic-pae i686
Distribution: Ubuntu 10.10

-- Information about the crash:
- What I was doing when the application crashed:
- only assumption: after taking about 750 pics (raw nef + jpg = 1500 pics in total), digiKam does not start any more, but crashes regularly. 

- total number of pics is about 120000

- is there a _real_ (hardware-based) limit, or does digiKam deals with storage need for storage??

- if so, why dont't a i get a hint for dealing with the situation?

The crash can be reproduced every time.

-- Backtrace:
Application: digiKam (digikam), signal: Aborted
Digikam::Album::next (this=0xa7996f0) at /build/buildd/digikam2-2.0.0~beta4+maverick~ppa4kde46/digikam/album/album.cpp:108
	in /build/buildd/digikam2-2.0.0~beta4+maverick~ppa4kde46/digikam/album/album.cpp
[Current thread is 1 (Thread 0xaf75b8a0 (LWP 16410))]

Thread 6 (Thread 0xaf2e3b70 (LWP 16411)):
#0  0xb424df66 in pthread_mutex_lock () from /lib/libc.so.6
#1  0xb300effd in g_main_context_query () from /lib/libglib-2.0.so.0
#2  0xb30142c4 in ?? () from /lib/libglib-2.0.so.0
#3  0xb3014ba7 in g_main_loop_run () from /lib/libglib-2.0.so.0
#4  0xb25d29c4 in ?? () from /usr/lib/libgio-2.0.so.0
#5  0xb303b48f in ?? () from /lib/libglib-2.0.so.0
#6  0xb323ecc9 in start_thread () from /lib/libpthread.so.0
#7  0xb424069e in clone () from /lib/libc.so.6

Thread 5 (Thread 0xac94eb70 (LWP 16412)):
#0  0xb7852424 in __kernel_vsyscall ()
#1  0xb32434dc in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0
#2  0xb424dd9d in pthread_cond_wait () from /lib/libc.so.6
#3  0xb45cf9c7 in wait (this=0xa4fd354, mutex=0xa4fd350, time=4294967295) at thread/qwaitcondition_unix.cpp:88
#4  QWaitCondition::wait (this=0xa4fd354, mutex=0xa4fd350, time=4294967295) at thread/qwaitcondition_unix.cpp:160
#5  0x08237d09 in Digikam::ScanController::run (this=0xa4d0438) at /build/buildd/digikam2-2.0.0~beta4+maverick~ppa4kde46/digikam/database/scancontroller.cpp:602
#6  0xb45cedf9 in QThreadPrivate::start (arg=0xa4d0438) at thread/qthread_unix.cpp:266
#7  0xb323ecc9 in start_thread () from /lib/libpthread.so.0
#8  0xb424069e in clone () from /lib/libc.so.6

Thread 4 (Thread 0xac14db70 (LWP 16413)):
#0  0xb2c21e36 in clock_gettime () from /lib/librt.so.1
#1  0xb462a50b in do_gettime () at tools/qelapsedtimer_unix.cpp:105
#2  qt_gettime () at tools/qelapsedtimer_unix.cpp:119
#3  0xb47016e5 in QTimerInfoList::updateCurrentTime (this=0xa4fb0ac) at kernel/qeventdispatcher_unix.cpp:339
#4  0xb470172a in QTimerInfoList::timerWait (this=0xa4fb0ac, tm=...) at kernel/qeventdispatcher_unix.cpp:442
#5  0xb46ff7a8 in timerSourcePrepareHelper (src=<value optimized out>, timeout=0xac14cf2c) at kernel/qeventdispatcher_glib.cpp:136
#6  0xb46ff83d in timerSourcePrepare (source=0x0, timeout=0xb2c25ff4) at kernel/qeventdispatcher_glib.cpp:169
#7  0xb3013e6a in g_main_context_prepare () from /lib/libglib-2.0.so.0
#8  0xb3014279 in ?? () from /lib/libglib-2.0.so.0
#9  0xb3014848 in g_main_context_iteration () from /lib/libglib-2.0.so.0
#10 0xb46ff59f in QEventDispatcherGlib::processEvents (this=0xa4fcd48, flags=...) at kernel/qeventdispatcher_glib.cpp:417
#11 0xb46cf609 in QEventLoop::processEvents (this=0xac14d100, flags=) at kernel/qeventloop.cpp:149
#12 0xb46cfa8a in QEventLoop::exec (this=0xac14d100, flags=...) at kernel/qeventloop.cpp:201
#13 0xb45cbb7e in QThread::exec (this=0xa5009b8) at thread/qthread.cpp:490
#14 0xb46ae35b in QInotifyFileSystemWatcherEngine::run (this=0xa5009b8) at io/qfilesystemwatcher_inotify.cpp:248
#15 0xb45cedf9 in QThreadPrivate::start (arg=0xa5009b8) at thread/qthread_unix.cpp:266
#16 0xb323ecc9 in start_thread () from /lib/libpthread.so.0
#17 0xb424069e in clone () from /lib/libc.so.6

Thread 3 (Thread 0xab94cb70 (LWP 16423)):
#0  0xb7852424 in __kernel_vsyscall ()
#1  0xb32434dc in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0
#2  0xb424dd9d in pthread_cond_wait () from /lib/libc.so.6
#3  0xb45cf9c7 in wait (this=0xaaa694b8, mutex=0xaaa694b4, time=4294967295) at thread/qwaitcondition_unix.cpp:88
#4  QWaitCondition::wait (this=0xaaa694b8, mutex=0xaaa694b4, time=4294967295) at thread/qwaitcondition_unix.cpp:160
#5  0xb65e271a in Digikam::ParkingThread::run (this=0xaaa694a8) at /build/buildd/digikam2-2.0.0~beta4+maverick~ppa4kde46/libs/threads/threadmanager.cpp:119
#6  0xb45cedf9 in QThreadPrivate::start (arg=0xaaa694a8) at thread/qthread_unix.cpp:266
#7  0xb323ecc9 in start_thread () from /lib/libpthread.so.0
#8  0xb424069e in clone () from /lib/libc.so.6

Thread 2 (Thread 0x9f346b70 (LWP 16452)):
[KCrash Handler]
#7  0xb7852424 in __kernel_vsyscall ()
#8  0xb419a941 in raise () from /lib/libc.so.6
#9  0xb419de42 in abort () from /lib/libc.so.6
#10 0xb43be055 in __gnu_cxx::__verbose_terminate_handler() () from /usr/lib/libstdc++.so.6
#11 0xb43bbf35 in ?? () from /usr/lib/libstdc++.so.6
#12 0xb43bbf72 in std::terminate() () from /usr/lib/libstdc++.so.6
#13 0xb43bbf95 in ?? () from /usr/lib/libstdc++.so.6
#14 0xb43bba15 in __cxa_call_unexpected () from /usr/lib/libstdc++.so.6
#15 0xb65dc3ba in CPGFImage::Read (this=0x9f345750, level=0, cb=0, data=0x0) at /build/buildd/digikam2-2.0.0~beta4+maverick~ppa4kde46/libs/3rdparty/libpgf/PGFimage.cpp:252
#16 0xb65e0166 in Digikam::readPGFImageData (data=..., img=...) at /build/buildd/digikam2-2.0.0~beta4+maverick~ppa4kde46/libs/threadimageio/pgfutils.cpp:68
#17 0xb65b4dc2 in Digikam::ThumbnailCreator::loadFromDatabase (this=0xce62388, info=...) at /build/buildd/digikam2-2.0.0~beta4+maverick~ppa4kde46/libs/threadimageio/thumbnailcreator.cpp:886
#18 0xb65b73ab in Digikam::ThumbnailCreator::load (this=0xce62388, path=..., rect=..., pregenerate=false) at /build/buildd/digikam2-2.0.0~beta4+maverick~ppa4kde46/libs/threadimageio/thumbnailcreator.cpp:245
#19 0xb65b7b1b in Digikam::ThumbnailCreator::load (this=0xce62388, path=...) at /build/buildd/digikam2-2.0.0~beta4+maverick~ppa4kde46/libs/threadimageio/thumbnailcreator.cpp:196
#20 0xb65c2865 in Digikam::ThumbnailLoadingTask::execute (this=0x4526ee98) at /build/buildd/digikam2-2.0.0~beta4+maverick~ppa4kde46/libs/threadimageio/thumbnailtask.cpp:169
#21 0xb65963d3 in Digikam::LoadSaveThread::run (this=0xfd312a8) at /build/buildd/digikam2-2.0.0~beta4+maverick~ppa4kde46/libs/threadimageio/loadsavethread.cpp:117
#22 0xb65e45c0 in Digikam::DynamicThread::DynamicThreadPriv::run (this=0xfd4e248) at /build/buildd/digikam2-2.0.0~beta4+maverick~ppa4kde46/libs/threads/dynamicthread.cpp:328
#23 0xb45c3523 in QThreadPoolThread::run (this=0x106a7988) at concurrent/qthreadpool.cpp:106
#24 0xb45cedf9 in QThreadPrivate::start (arg=0x106a7988) at thread/qthread_unix.cpp:266
#25 0xb323ecc9 in start_thread () from /lib/libpthread.so.0
#26 0xb424069e in clone () from /lib/libc.so.6

Thread 1 (Thread 0xaf75b8a0 (LWP 16410)):
#0  Digikam::Album::next (this=0xa7996f0) at /build/buildd/digikam2-2.0.0~beta4+maverick~ppa4kde46/digikam/album/album.cpp:108
#1  0x081c8bfb in numberOfChildren (this=0xa7996f0, parent=...) at /build/buildd/digikam2-2.0.0~beta4+maverick~ppa4kde46/libs/models/abstractalbummodelpriv.h:118
#2  Digikam::AbstractAlbumModel::rowCount (this=0xa7996f0, parent=...) at /build/buildd/digikam2-2.0.0~beta4+maverick~ppa4kde46/libs/models/abstractalbummodel.cpp:156
#3  0xb529bc49 in QSortFilterProxyModelPrivate::source_items_inserted (this=0xfd82410, source_parent=..., start=20154, end=20154, orient=Qt::Vertical) at itemviews/qsortfilterproxymodel.cpp:774
#4  0xb529c09f in QSortFilterProxyModelPrivate::_q_sourceRowsInserted (this=0xfd82410, source_parent=..., start=20154, end=20154) at itemviews/qsortfilterproxymodel.cpp:1278
#5  0xb529e4af in QSortFilterProxyModel::qt_metacall (this=0xfd816d8, _c=QMetaObject::InvokeMetaMethod, _id=12, _a=0xbfe29ae0) at .moc/release-shared/moc_qsortfilterproxymodel.cpp:135
#6  0x081d135f in Digikam::AlbumFilterModel::qt_metacall (this=0xfd816d8, _c=QMetaObject::InvokeMetaMethod, _id=37, _a=0xbfe29ae0) at /build/buildd/digikam2-2.0.0~beta4+maverick~ppa4kde46/obj-i686-linux-gnu/digikam/albumfiltermodel.moc:84
#7  0xb46d68ca in QMetaObject::metacall (object=0xfd816d8, cl=QMetaObject::ReadProperty, idx=37, argv=0xbfe29ae0) at kernel/qmetaobject.cpp:237
#8  0xb46e96ad in QMetaObject::activate (sender=0xa7996f0, m=0x8580c00, local_signal_index=5, argv=0x10ff1f38) at kernel/qobject.cpp:3280
#9  0xb473a3bf in QAbstractItemModel::rowsInserted (this=0xa7996f0, _t1=..., _t2=20154, _t3=20154) at .moc/release-shared/moc_qabstractitemmodel.cpp:181
#10 0xb46c9bf3 in QAbstractItemModel::endInsertRows (this=0xa7996f0) at kernel/qabstractitemmodel.cpp:2413
#11 0x081c78f1 in Digikam::AbstractAlbumModel::slotAlbumAdded (this=0xa7996f0, album=0x4529ef68) at /build/buildd/digikam2-2.0.0~beta4+maverick~ppa4kde46/libs/models/abstractalbummodel.cpp:454
#12 0x081ca5a4 in Digikam::AbstractAlbumModel::qt_metacall (this=0xa7996f0, _c=QMetaObject::InvokeMetaMethod, _id=26, _a=0xbfe29dd8) at /build/buildd/digikam2-2.0.0~beta4+maverick~ppa4kde46/obj-i686-linux-gnu/digikam/abstractalbummodel.moc:90
#13 0x081ca63f in Digikam::AbstractSpecificAlbumModel::qt_metacall (this=0xa7996f0, _c=QMetaObject::InvokeMetaMethod, _id=26, _a=0xbfe29dd8) at /build/buildd/digikam2-2.0.0~beta4+maverick~ppa4kde46/obj-i686-linux-gnu/digikam/abstractalbummodel.moc:161
#14 0x081ca6cf in Digikam::AbstractCountingAlbumModel::qt_metacall (this=0xa7996f0, _c=QMetaObject::InvokeMetaMethod, _id=26, _a=0xbfe29dd8) at /build/buildd/digikam2-2.0.0~beta4+maverick~ppa4kde46/obj-i686-linux-gnu/digikam/abstractalbummodel.moc:234
#15 0x081cab12 in Digikam::AbstractCheckableAlbumModel::qt_metacall (this=0xa7996f0, _c=QMetaObject::InvokeMetaMethod, _id=26, _a=0xbfe29dd8) at /build/buildd/digikam2-2.0.0~beta4+maverick~ppa4kde46/obj-i686-linux-gnu/digikam/abstractalbummodel.moc:332
#16 0x081cdc4c in Digikam::SearchModel::qt_metacall (this=0xa7996f0, _c=QMetaObject::InvokeMetaMethod, _id=26, _a=0xbfe29dd8) at /build/buildd/digikam2-2.0.0~beta4+maverick~ppa4kde46/obj-i686-linux-gnu/digikam/albummodel.moc:67
#17 0xb46d68ca in QMetaObject::metacall (object=0xa7996f0, cl=QMetaObject::ReadProperty, idx=26, argv=0xbfe29dd8) at kernel/qmetaobject.cpp:237
#18 0xb46e96ad in QMetaObject::activate (sender=0xa4fa8e8, m=0x8473ba8, local_signal_index=1, argv=0x10ff1f38) at kernel/qobject.cpp:3280
#19 0x081fc465 in Digikam::AlbumManager::signalAlbumAdded (this=0xa4fa8e8, _t1=0x4529ef68) at /build/buildd/digikam2-2.0.0~beta4+maverick~ppa4kde46/obj-i686-linux-gnu/digikam/albummanager.moc:240
#20 0x08200ab1 in Digikam::AlbumManager::scanSAlbums (this=0xa4fa8e8) at /build/buildd/digikam2-2.0.0~beta4+maverick~ppa4kde46/digikam/album/albummanager.cpp:1776
#21 0x0820b7e2 in Digikam::AlbumManager::refresh (this=0xa4fa8e8) at /build/buildd/digikam2-2.0.0~beta4+maverick~ppa4kde46/digikam/album/albummanager.cpp:1243
#22 0x0820bfd1 in Digikam::AlbumManager::startScan (this=0xa4fa8e8) at /build/buildd/digikam2-2.0.0~beta4+maverick~ppa4kde46/digikam/album/albummanager.cpp:1147
#23 0x081eff51 in Digikam::DigikamApp::DigikamApp (this=0xa5a1f98, __in_chrg=<value optimized out>, __vtt_parm=<value optimized out>) at /build/buildd/digikam2-2.0.0~beta4+maverick~ppa4kde46/digikam/main/digikamapp.cpp:269
#24 0x0832c861 in main (argc=5, argv=0xbfe2a474) at /build/buildd/digikam2-2.0.0~beta4+maverick~ppa4kde46/digikam/main/main.cpp:188

Possible duplicates by query: bug 271707, bug 255930, bug 247977, bug 246789.

Reported using DrKonqi
Comment 1 Axel Krebs 2011-04-25 22:28:06 UTC
Addendum:
Even after removing the "new" folder with 1500m pics content, digiKam does not start any more.

This state should correspond to the state before adding 1500 pics, numerically. 
Something must have changed, however!
Comment 2 caulier.gilles 2011-07-06 11:10:53 UTC
We need feedback using a recent version. 2.0.0 RC is out, please test...

Thanks in advance

Gilles Caulier
Comment 3 Axel Krebs 2011-07-19 19:25:53 UTC
(In reply to comment #2)
> We need feedback using a recent version. 2.0.0 RC is out, please test...
> 
> Thanks in advance
> 
> Gilles Caulier

Gilles:

as I announced earlier, I do not have 1500 (or even mors pics at a time) these days... But erasing a large folder does not provoke crashed at my machine, anymore.

Maybe, crash causes have disappeared!?


Axel
Comment 4 caulier.gilles 2011-07-21 09:29:11 UTC
Ok i close this file now. Reopen if necessary

Gilles Caulier
Comment 5 Axel Krebs 2011-07-23 11:48:54 UTC
Am 21.07.2011 11:29, schrieb Gilles Caulier:
> https://bugs.kde.org/show_bug.cgi?id=271710
> 
> 
> Gilles Caulier <caulier.gilles@gmail.com> changed:
> 
>            What    |Removed                     |Added
> ----------------------------------------------------------------------------
>              Status|UNCONFIRMED                 |RESOLVED
>          Resolution|                            |FIXED
> 
> 
> 
> 
> --- Comment #4 from Gilles Caulier <caulier gilles gmail com>  2011-07-21 09:29:11 ---
> Ok i close this file now. Reopen if necessary
> 
> Gilles Caulier
> 
Thanks for offer!

Axel