Bug 297686

Summary: digicam hung while importing database
Product: [Applications] digikam Reporter: skippyp
Component: Database-AlbumsAssignee: Digikam Developers <digikam-bugs-null>
Status: RESOLVED FIXED    
Severity: crash CC: anantapalani, caulier.gilles
Priority: NOR    
Version: 2.5.0   
Target Milestone: ---   
Platform: Microsoft Windows   
OS: Microsoft Windows   
Latest Commit: Version Fixed In: 3.0.0

Description skippyp 2012-04-07 20:42:38 UTC
Application: digikam (2.5.0)
KDE Platform Version: 4.7.4 (4.7.4)
Qt Version: 4.7.4
Operating System: WindowsNT Windows 7 i686

-- Information about the crash:
- What I was doing when the application crashed:

i had imported pics from a network drive during set up and then decided to switch that in settings to remove the local import and import the same stuff from the same drive as a network drive.  let it go overnight and never got past 1%.  upon cancelling and exiting program the bug report popped up.

-- Backtrace:
Application: digiKam (digikam.exe), signal: EXCEPTION_ACCESS_VIOLATION


ntdll.dll!ZwWaitForWorkViaWorkerFactory() [[unknown] @ -1] at 0x77341f26
kernel32.dll!BaseThreadInitThunk() [[unknown] @ -1] at 0x7672339a
ntdll.dll!RtlInitializeExceptionChain() [[unknown] @ -1] at 0x77359ef2
ntdll.dll!RtlInitializeExceptionChain() [[unknown] @ -1] at 0x77359ec5


ntdll.dll!ZwWaitForSingleObject() [[unknown] @ -1] at 0x7733f8b1
kernel32.dll!WaitForSingleObjectEx() [[unknown] @ -1] at 0x76721194
kernel32.dll!WaitForSingleObject() [[unknown] @ -1] at 0x76721148
QtCore4.dll!QWaitCondition::wait() [[unknown] @ -1] at 0x5fbd7ea6
digikamlib.dll!Digikam::VersionFileInfo::VersionFileInfo() [[unknown] @ -1] at 0x58752b6d
QtCore4.dll!QEventDispatcherWin32::`default constructor closure'() [[unknown] @ -1] at 0x5fbd6f7c


ntdll.dll!ZwWaitForMultipleObjects() [[unknown] @ -1] at 0x7734013d
kernel32.dll!WaitForMultipleObjectsEx() [[unknown] @ -1] at 0x76721a2c
kernel32.dll!WaitForMultipleObjects() [[unknown] @ -1] at 0x76724208
QtCore4.dll!QFSFileEngine::fileTime() [[unknown] @ -1] at 0x5fc97692
QtCore4.dll!QThread::setTerminationEnabled() [[unknown] @ -1] at 0x5fbd74ad
MSVCR100.dll!endthreadex() [[unknown] @ -1] at 0x61a6c600
kernel32.dll!BaseThreadInitThunk() [[unknown] @ -1] at 0x7672339a
ntdll.dll!RtlInitializeExceptionChain() [[unknown] @ -1] at 0x77359ef2
ntdll.dll!RtlInitializeExceptionChain() [[unknown] @ -1] at 0x77359ec5


ntdll.dll!ZwWaitForMultipleObjects() [[unknown] @ -1] at 0x7734013d
kernel32.dll!WaitForMultipleObjectsEx() [[unknown] @ -1] at 0x76721a2c
kernel32.dll!WaitForMultipleObjects() [[unknown] @ -1] at 0x76724208
QtCore4.dll!QFSFileEngine::fileTime() [[unknown] @ -1] at 0x5fc97692
QtCore4.dll!QThread::setTerminationEnabled() [[unknown] @ -1] at 0x5fbd74ad
MSVCR100.dll!endthreadex() [[unknown] @ -1] at 0x61a6c600
kernel32.dll!BaseThreadInitThunk() [[unknown] @ -1] at 0x7672339a
ntdll.dll!RtlInitializeExceptionChain() [[unknown] @ -1] at 0x77359ef2
ntdll.dll!RtlInitializeExceptionChain() [[unknown] @ -1] at 0x77359ec5


ntdll.dll!ZwDelayExecution() [[unknown] @ -1] at 0x7733fd71
KERNELBASE.dll!Sleep() [[unknown] @ -1] at 0x761e3a8b
ole32.dll!CoGetTreatAsClass() [[unknown] @ -1] at 0x75d1d98d
ole32.dll!CoGetTreatAsClass() [[unknown] @ -1] at 0x75d1d87a
kernel32.dll!BaseThreadInitThunk() [[unknown] @ -1] at 0x7672339a
ntdll.dll!RtlInitializeExceptionChain() [[unknown] @ -1] at 0x77359ef2
ntdll.dll!RtlInitializeExceptionChain() [[unknown] @ -1] at 0x77359ec5


ntdll.dll!ZwWaitForMultipleObjects() [[unknown] @ -1] at 0x7734013d
kernel32.dll!BaseThreadInitThunk() [[unknown] @ -1] at 0x7672339a
ntdll.dll!RtlInitializeExceptionChain() [[unknown] @ -1] at 0x77359ef2
ntdll.dll!RtlInitializeExceptionChain() [[unknown] @ -1] at 0x77359ec5


digikam.exe!QMap<QString,QString>::unite() [[unknown] @ -1] at 0x4247fb
digikam.exe!QMap<QString,QString>::unite() [[unknown] @ -1] at 0x428893
digikam.exe!QMap<QString,QString>::unite() [[unknown] @ -1] at 0x65f111
kdeui.dll!KWallet::Wallet::readPassword() [[unknown] @ -1] at 0x5b629d8a
QtCore4.dll!QSignalMapper::map() [[unknown] @ -1] at 0x5fcc4411
QtCore4.dll!QSignalMapper::qt_metacall() [[unknown] @ -1] at 0x5fcc46dd
QtGui4.dll!QButtonGroup::checkedId() [[unknown] @ -1] at 0x5bcb9791
QtGui4.dll!QButtonGroup::checkedId() [[unknown] @ -1] at 0x5bcb96f7
QtGui4.dll!QAbstractButton::mouseReleaseEvent() [[unknown] @ -1] at 0x5bcba645
QtGui4.dll!QAbstractButton::event() [[unknown] @ -1] at 0x5bcba4aa
kdeui.dll!KWallet::Wallet::readPassword() [[unknown] @ -1] at 0x5b5f7ed0
kdeui.dll!KWallet::Wallet::readPassword() [[unknown] @ -1] at 0x5b7a88eb
QtCore4.dll!QCoreApplication::sendSpontaneousEvent() [[unknown] @ -1] at 0x5fd03d82
QtGui4.dll!QApplication::winMouseButtonUp() [[unknown] @ -1] at 0x5ba301b1
QtGui4.dll!QApplication::winFocus() [[unknown] @ -1] at 0x5ba2ca74
USER32.dll!CharPrevW() [[unknown] @ -1] at 0x762377c4
USER32.dll!DispatchMessageW() [[unknown] @ -1] at 0x7623788a
QtGui4.dll!qt_getRegisteredWndClass() [[unknown] @ -1] at 0x5ba2b8bf
QtGui4.dll!QDialog::exec() [[unknown] @ -1] at 0x5bd97945
digikam.exe!QMap<QString,QString>::unite() [[unknown] @ -1] at 0x4285c8
digikam.exe!QMap<QString,QString>::unite() [[unknown] @ -1] at 0x4a9db8
QtGui4.dll!QAction::activate() [[unknown] @ -1] at 0x5b9c1f8f
QtGui4.dll!QMenu::setIcon() [[unknown] @ -1] at 0x5bd2a8a5
QtGui4.dll!QMenu::mouseReleaseEvent() [[unknown] @ -1] at 0x5bd2dc39
QtGui4.dll!QMenu::event() [[unknown] @ -1] at 0x5bd2e01d
QtGui4.dll!QApplicationPrivate::notify_helper() [[unknown] @ -1] at 0x5b9ceb9d
kdeui.dll!KWallet::Wallet::readPassword() [[unknown] @ -1] at 0x5b5f7ed0
kdeui.dll!KWallet::Wallet::readPassword() [[unknown] @ -1] at 0x5b7a88eb
QtCore4.dll!QCoreApplication::sendSpontaneousEvent() [[unknown] @ -1] at 0x5fd03d82
QtGui4.dll!QApplication::winMouseButtonUp() [[unknown] @ -1] at 0x5ba2fdd9
QtGui4.dll!QApplication::winFocus() [[unknown] @ -1] at 0x5ba2ca74
USER32.dll!CharPrevW() [[unknown] @ -1] at 0x762377c4
USER32.dll!DispatchMessageW() [[unknown] @ -1] at 0x7623788a
QtGui4.dll!qt_getRegisteredWndClass() [[unknown] @ -1] at 0x5ba2b8bf
QtCore4.dll!QCoreApplication::exec() [[unknown] @ -1] at 0x5fcadc7c
digikam.exe!QMap<QString,QString>::unite() [[unknown] @ -1] at 0x59c4cc
kernel32.dll!BaseThreadInitThunk() [[unknown] @ -1] at 0x7672339a
ntdll.dll!RtlInitializeExceptionChain() [[unknown] @ -1] at 0x77359ef2
ntdll.dll!RtlInitializeExceptionChain() [[unknown] @ -1] at 0x77359ec5


ntdll.dll!ZwWaitForMultipleObjects() [[unknown] @ -1] at 0x7734013d
kernel32.dll!WaitForMultipleObjectsEx() [[unknown] @ -1] at 0x76721a2c
kernel32.dll!WaitForMultipleObjects() [[unknown] @ -1] at 0x76724208
QtCore4.dll!QFSFileEngine::fileTime() [[unknown] @ -1] at 0x5fc97692
QtCore4.dll!QThread::setTerminationEnabled() [[unknown] @ -1] at 0x5fbd74ad
MSVCR100.dll!endthreadex() [[unknown] @ -1] at 0x61a6c600
kernel32.dll!BaseThreadInitThunk() [[unknown] @ -1] at 0x7672339a
ntdll.dll!RtlInitializeExceptionChain() [[unknown] @ -1] at 0x77359ef2
ntdll.dll!RtlInitializeExceptionChain() [[unknown] @ -1] at 0x77359ec5


ntdll.dll!NtRemoveIoCompletion() [[unknown] @ -1] at 0x7733f939
kernel32.dll!BaseThreadInitThunk() [[unknown] @ -1] at 0x7672339a
ntdll.dll!RtlInitializeExceptionChain() [[unknown] @ -1] at 0x77359ef2
ntdll.dll!RtlInitializeExceptionChain() [[unknown] @ -1] at 0x77359ec5


ntdll.dll!ZwWaitForMultipleObjects() [[unknown] @ -1] at 0x7734013d
kernel32.dll!BaseThreadInitThunk() [[unknown] @ -1] at 0x7672339a
ntdll.dll!RtlInitializeExceptionChain() [[unknown] @ -1] at 0x77359ef2
ntdll.dll!RtlInitializeExceptionChain() [[unknown] @ -1] at 0x77359ec5


ntdll.dll!ZwWaitForMultipleObjects() [[unknown] @ -1] at 0x7734013d
kernel32.dll!WaitForMultipleObjectsEx() [[unknown] @ -1] at 0x76721a2c
kernel32.dll!WaitForMultipleObjects() [[unknown] @ -1] at 0x76724208
QtCore4.dll!QFSFileEngine::fileTime() [[unknown] @ -1] at 0x5fc97692
QtCore4.dll!QThread::setTerminationEnabled() [[unknown] @ -1] at 0x5fbd74ad
MSVCR100.dll!endthreadex() [[unknown] @ -1] at 0x61a6c600
kernel32.dll!BaseThreadInitThunk() [[unknown] @ -1] at 0x7672339a
ntdll.dll!RtlInitializeExceptionChain() [[unknown] @ -1] at 0x77359ef2
ntdll.dll!RtlInitializeExceptionChain() [[unknown] @ -1] at 0x77359ec5


ntdll.dll!ZwWaitForMultipleObjects() [[unknown] @ -1] at 0x7734013d
kernel32.dll!WaitForMultipleObjectsEx() [[unknown] @ -1] at 0x76721a2c
kernel32.dll!WaitForMultipleObjects() [[unknown] @ -1] at 0x76724208
QtCore4.dll!QFSFileEngine::fileTime() [[unknown] @ -1] at 0x5fc97692
QtCore4.dll!QThread::setTerminationEnabled() [[unknown] @ -1] at 0x5fbd74ad
MSVCR100.dll!endthreadex() [[unknown] @ -1] at 0x61a6c600
kernel32.dll!BaseThreadInitThunk() [[unknown] @ -1] at 0x7672339a
ntdll.dll!RtlInitializeExceptionChain() [[unknown] @ -1] at 0x77359ef2
ntdll.dll!RtlInitializeExceptionChain() [[unknown] @ -1] at 0x77359ec5


ntdll.dll!ZwWaitForMultipleObjects() [[unknown] @ -1] at 0x7734013d
kernel32.dll!WaitForMultipleObjectsEx() [[unknown] @ -1] at 0x76721a2c
kernel32.dll!WaitForMultipleObjects() [[unknown] @ -1] at 0x76724208
QtCore4.dll!QFSFileEngine::fileTime() [[unknown] @ -1] at 0x5fc97692
QtCore4.dll!QThread::setTerminationEnabled() [[unknown] @ -1] at 0x5fbd74ad
MSVCR100.dll!endthreadex() [[unknown] @ -1] at 0x61a6c600
kernel32.dll!BaseThreadInitThunk() [[unknown] @ -1] at 0x7672339a
ntdll.dll!RtlInitializeExceptionChain() [[unknown] @ -1] at 0x77359ef2
ntdll.dll!RtlInitializeExceptionChain() [[unknown] @ -1] at 0x77359ec5


ntdll.dll!ZwWaitForSingleObject() [[unknown] @ -1] at 0x7733f8b1
kernel32.dll!WaitForSingleObjectEx() [[unknown] @ -1] at 0x76721194
libvlccore.dll!vlc_cond_wait() [[unknown] @ -1] at 0x6875fb8c
libvlccore.dll!intf_Eject() [[unknown] @ -1] at 0x686dabae


ntdll.dll!ZwWaitForMultipleObjects() [[unknown] @ -1] at 0x7734013d
kernel32.dll!WaitForMultipleObjectsEx() [[unknown] @ -1] at 0x76721a2c
kernel32.dll!WaitForMultipleObjects() [[unknown] @ -1] at 0x76724208
QtCore4.dll!QFSFileEngine::fileTime() [[unknown] @ -1] at 0x5fc97692
QtCore4.dll!QThread::setTerminationEnabled() [[unknown] @ -1] at 0x5fbd74ad
MSVCR100.dll!endthreadex() [[unknown] @ -1] at 0x61a6c600
kernel32.dll!BaseThreadInitThunk() [[unknown] @ -1] at 0x7672339a
ntdll.dll!RtlInitializeExceptionChain() [[unknown] @ -1] at 0x77359ef2
ntdll.dll!RtlInitializeExceptionChain() [[unknown] @ -1] at 0x77359ec5


ntdll.dll!ZwWaitForMultipleObjects() [[unknown] @ -1] at 0x7734013d
kernel32.dll!WaitForMultipleObjectsEx() [[unknown] @ -1] at 0x76721a2c
kernel32.dll!WaitForMultipleObjects() [[unknown] @ -1] at 0x76724208
QtCore4.dll!QFSFileEngine::fileTime() [[unknown] @ -1] at 0x5fc97692
QtCore4.dll!QThread::setTerminationEnabled() [[unknown] @ -1] at 0x5fbd74ad
MSVCR100.dll!endthreadex() [[unknown] @ -1] at 0x61a6c600
kernel32.dll!BaseThreadInitThunk() [[unknown] @ -1] at 0x7672339a
ntdll.dll!RtlInitializeExceptionChain() [[unknown] @ -1] at 0x77359ef2
ntdll.dll!RtlInitializeExceptionChain() [[unknown] @ -1] at 0x77359ec5


USER32.dll!DispatchMessageW() [[unknown] @ -1] at 0x762378d7
SHELL32.dll!DllCanUnloadNow() [[unknown] @ -1] at 0x750f9acf
SHLWAPI.dll!IUnknown_QueryService() [[unknown] @ -1] at 0x74ff43c0
kernel32.dll!BaseThreadInitThunk() [[unknown] @ -1] at 0x7672339a
ntdll.dll!RtlInitializeExceptionChain() [[unknown] @ -1] at 0x77359ef2
ntdll.dll!RtlInitializeExceptionChain() [[unknown] @ -1] at 0x77359ec5


ntdll.dll!ZwWaitForMultipleObjects() [[unknown] @ -1] at 0x7734013d
kernel32.dll!WaitForMultipleObjectsEx() [[unknown] @ -1] at 0x76721a2c
kernel32.dll!WaitForMultipleObjects() [[unknown] @ -1] at 0x76724208
QtCore4.dll!QFSFileEngine::fileTime() [[unknown] @ -1] at 0x5fc97692
QtCore4.dll!QThread::setTerminationEnabled() [[unknown] @ -1] at 0x5fbd74ad
MSVCR100.dll!endthreadex() [[unknown] @ -1] at 0x61a6c600
kernel32.dll!BaseThreadInitThunk() [[unknown] @ -1] at 0x7672339a
ntdll.dll!RtlInitializeExceptionChain() [[unknown] @ -1] at 0x77359ef2
ntdll.dll!RtlInitializeExceptionChain() [[unknown] @ -1] at 0x77359ec5


ntdll.dll!ZwWaitForMultipleObjects() [[unknown] @ -1] at 0x7734013d
kernel32.dll!WaitForMultipleObjectsEx() [[unknown] @ -1] at 0x76721a2c
kernel32.dll!WaitForMultipleObjects() [[unknown] @ -1] at 0x76724208
QtCore4.dll!QFSFileEngine::fileTime() [[unknown] @ -1] at 0x5fc97692
QtCore4.dll!QThread::setTerminationEnabled() [[unknown] @ -1] at 0x5fbd74ad
MSVCR100.dll!endthreadex() [[unknown] @ -1] at 0x61a6c600
kernel32.dll!BaseThreadInitThunk() [[unknown] @ -1] at 0x7672339a
ntdll.dll!RtlInitializeExceptionChain() [[unknown] @ -1] at 0x77359ef2
ntdll.dll!RtlInitializeExceptionChain() [[unknown] @ -1] at 0x77359ec5


ntdll.dll!ZwWaitForWorkViaWorkerFactory() [[unknown] @ -1] at 0x77341f26
kernel32.dll!BaseThreadInitThunk() [[unknown] @ -1] at 0x7672339a
ntdll.dll!RtlInitializeExceptionChain() [[unknown] @ -1] at 0x77359ef2
ntdll.dll!RtlInitializeExceptionChain() [[unknown] @ -1] at 0x77359ec5


ntdll.dll!ZwWaitForSingleObject() [[unknown] @ -1] at 0x7733f8b1
kernel32.dll!WaitForSingleObjectEx() [[unknown] @ -1] at 0x76721194
kernel32.dll!WaitForSingleObject() [[unknown] @ -1] at 0x76721148
VCOMP100.DLL!vcomp_ordered_loop_end() [[unknown] @ -1] at 0x68604111
VCOMP100.DLL!vcomp_atomic_div_r8() [[unknown] @ -1] at 0x6860708e
kernel32.dll!BaseThreadInitThunk() [[unknown] @ -1] at 0x7672339a
ntdll.dll!RtlInitializeExceptionChain() [[unknown] @ -1] at 0x77359ef2
ntdll.dll!RtlInitializeExceptionChain() [[unknown] @ -1] at 0x77359ec5


ntdll.dll!ZwWaitForMultipleObjects() [[unknown] @ -1] at 0x7734013d
kernel32.dll!WaitForMultipleObjectsEx() [[unknown] @ -1] at 0x76721a2c
kernel32.dll!WaitForMultipleObjects() [[unknown] @ -1] at 0x76724208
QtCore4.dll!QFSFileEngine::fileTime() [[unknown] @ -1] at 0x5fc97692
QtCore4.dll!QThread::setTerminationEnabled() [[unknown] @ -1] at 0x5fbd74ad
MSVCR100.dll!endthreadex() [[unknown] @ -1] at 0x61a6c600
kernel32.dll!BaseThreadInitThunk() [[unknown] @ -1] at 0x7672339a
ntdll.dll!RtlInitializeExceptionChain() [[unknown] @ -1] at 0x77359ef2
ntdll.dll!RtlInitializeExceptionChain() [[unknown] @ -1] at 0x77359ec5

Reported using DrKonqi
Comment 1 Marcel Wiesweg 2012-05-19 10:54:28 UTC
Two threads seem to be active from this backtrace:
One is sitting in WaitForWorkViaWorkerFactory - dont know what that is - the other in some KWallet code apparently querying a password.
Comment 2 caulier.gilles 2012-06-22 08:53:15 UTC
Official digiKam 2.6.0 release is out since few days now :

http://www.digikam.org/drupal/node/656

Please, check if this entry still valid, or update report accordingly.

Thanks in advance.

Gilles Caulier
Comment 3 Ananta Palani 2013-02-03 22:05:01 UTC
Git commit 57b269e2d6dfd8f0c11d482ec12d3e9c126c1cd1 by Ananta Palani.
Committed on 03/02/2013 at 23:04.
Pushed by palani into branch 'master'.

Fix thumbnails not shown in Windows and excessive use of virtual memory / handles which may cause crashes and other unexpected behavior by removing file monitoring and only monitoring directories for changes. These problems might still occur with very large numbers of folders but could not be confirmed. However, medium to large collections should no longer cause a problem.
Related: bug 290962, bug 297793, bug 308310, bug 310252, bug 310865, bug 312422, bug 312999, bug 291917, bug 295445
FIXED-IN: 3.0.0

M  +9    -2    digikam/album/albumwatch.cpp

http://commits.kde.org/digikam/57b269e2d6dfd8f0c11d482ec12d3e9c126c1cd1
Comment 4 Ananta Palani 2013-02-03 22:13:54 UTC
I have made a beta compilation of digiKam 3.0.0 for you to test whether the commit I just made fixes your problem:

   https://docs.google.com/file/d/0B4Esh3gAgC9QcW5nS04zQWVsNGs/edit?usp=sharing

Can you give it a try and let me know how it works for you?