[Bug 286719] New: Digikam hang during startup (deadlock?)

classic Classic list List threaded Threaded
13 messages Options
Reply | Threaded
Open this post in threaded view
|

[Bug 286719] New: Digikam hang during startup (deadlock?)

Oldřich Jedlička
https://bugs.kde.org/show_bug.cgi?id=286719

           Summary: Digikam hang during startup (deadlock?)
           Product: digikam
           Version: 2.3.0
          Platform: Gentoo Packages
        OS/Version: Linux
            Status: UNCONFIRMED
          Severity: crash
          Priority: NOR
         Component: general
        AssignedTo: [hidden email]
        ReportedBy: [hidden email]


Created an attachment (id=65720)
 --> (http://bugs.kde.org/attachment.cgi?id=65720)
Thread dump

Version:           2.3.0 (using KDE 4.7.3)
OS:                Linux

When I start Digikam from quick action when I plug my camera, it hangs during
startup. From the backtrace (attached) it looks like there is a deadlock.



Reproducible: Didn't try

Steps to Reproduce:
Click on "Download pictures using Digikam" when the Camera appears on screen.

Actual Results:  
Digikam hangs during startup.

Expected Results:  
Digikam starts.

--
Configure bugmail: https://bugs.kde.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
_______________________________________________
Digikam-devel mailing list
[hidden email]
https://mail.kde.org/mailman/listinfo/digikam-devel
Reply | Threaded
Open this post in threaded view
|

[Bug 286719] Digikam hang during startup (deadlock?)

Oldřich Jedlička
https://bugs.kde.org/show_bug.cgi?id=286719





--- Comment #1 from Oldřich Jedlička <oldium pro seznam cz>  2011-11-15 18:40:27 ---
The command line looks like: digikam --download-from-udi
/org/kde/solid/udev/sys/devices/pci0000:00/0000:00:1d.0/usb6/6-1

--
Configure bugmail: https://bugs.kde.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
_______________________________________________
Digikam-devel mailing list
[hidden email]
https://mail.kde.org/mailman/listinfo/digikam-devel
Reply | Threaded
Open this post in threaded view
|

[Bug 286719] Digikam hang during startup (deadlock?)

Gilles Caulier-4
In reply to this post by Oldřich Jedlička
https://bugs.kde.org/show_bug.cgi?id=286719


Gilles Caulier <[hidden email]> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |[hidden email]
          Component|general                     |Import




--- Comment #2 from Gilles Caulier <caulier gilles gmail com>  2011-11-15 19:41:12 ---
Which camera do you plug ? Do you use gphoto2 camera, as Canon for ex ?

Gilles Caulier

--
Configure bugmail: https://bugs.kde.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
_______________________________________________
Digikam-devel mailing list
[hidden email]
https://mail.kde.org/mailman/listinfo/digikam-devel
Reply | Threaded
Open this post in threaded view
|

[Bug 286719] Digikam hang during startup (deadlock?)

Oldřich Jedlička
In reply to this post by Oldřich Jedlička
https://bugs.kde.org/show_bug.cgi?id=286719





--- Comment #3 from Oldřich Jedlička <oldium pro seznam cz>  2011-11-15 19:56:07 ---
I've restarted and the hang-up happens also without the Camera plugged. Anyway,
I have gphoto2 camera, Canon PowerShort S60.

--
Configure bugmail: https://bugs.kde.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
_______________________________________________
Digikam-devel mailing list
[hidden email]
https://mail.kde.org/mailman/listinfo/digikam-devel
Reply | Threaded
Open this post in threaded view
|

[Bug 286719] Digikam hang during startup (deadlock?)

Oldřich Jedlička
In reply to this post by Oldřich Jedlička
https://bugs.kde.org/show_bug.cgi?id=286719





--- Comment #4 from Oldřich Jedlička <oldium pro seznam cz>  2011-11-15 20:02:57 ---
I can analyse the problem more in depth, but currently I'm not much familiar
with Qt/KDE. I see DatabaseAccess::DatabaseAccess waiting for lock on Thread 1
and from code also an acquired lock on DatabaseAccess::checkReadyForUse on
Thread 4. Thread 4 is waiting on some "emit" code (blocking_activate), which I
don't know how works. So the problem is that Thread 1 cannot continue, because
Thread 4 has the lock. Thread 4 cannot continue, because it waits for
something.

--
Configure bugmail: https://bugs.kde.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
_______________________________________________
Digikam-devel mailing list
[hidden email]
https://mail.kde.org/mailman/listinfo/digikam-devel
Reply | Threaded
Open this post in threaded view
|

[Bug 286719] Digikam hang during startup (deadlock?)

Gilles Caulier-4
In reply to this post by Oldřich Jedlička
https://bugs.kde.org/show_bug.cgi?id=286719


Gilles Caulier <[hidden email]> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
          Component|Import                      |Database




--
Configure bugmail: https://bugs.kde.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
_______________________________________________
Digikam-devel mailing list
[hidden email]
https://mail.kde.org/mailman/listinfo/digikam-devel
Reply | Threaded
Open this post in threaded view
|

[Bug 286719] Digikam hang during startup (deadlock?)

Oldřich Jedlička
In reply to this post by Oldřich Jedlička
https://bugs.kde.org/show_bug.cgi?id=286719





--- Comment #5 from Oldřich Jedlička <oldium pro seznam cz>  2011-11-16 07:35:28 ---
I've checked the CollectionManager::updateLocations (Thread 4):

The need to have class DatabaseAccessUnlock points to the real problem - the
locking is screwed. If there are methods that need to have the database
unlocked then they should be called as such.

Moreover, the DatabaseAccessUnlock is written for multi-threaded environment.
The constructor frees all locks, but there is no guarantee that the lock will
be obtained from other thread after the constructor returns. This just cannot
work without locking...

I think this class is dangerous in the way it cannot actually do what it
declares, so it should be removed and the methods fixed. Maybe the
CollectionManagerPrivate::listVolumes method could be revised for thread-safety
with KDE 4.7 again (according to the comment inside the method).

--
Configure bugmail: https://bugs.kde.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
_______________________________________________
Digikam-devel mailing list
[hidden email]
https://mail.kde.org/mailman/listinfo/digikam-devel
Reply | Threaded
Open this post in threaded view
|

[Bug 286719] Digikam hang during startup (deadlock?)

Marcel Wiesweg
In reply to this post by Oldřich Jedlička
https://bugs.kde.org/show_bug.cgi?id=286719





--- Comment #6 from Marcel Wiesweg <marcel wiesweg gmx de>  2011-11-16 20:38:35 ---
The important point is that the current thread, which intends to block on an
event loop mutex, drops the DatabaseAccess recursive mutex before. Any other
thread may acquire the DatabaseAccess mutex at will. It seems that the
unlocking does not work though - apparently, the mutex is locked. It's a
special case of a Solid event delivered during the startup phase.
What we should reconsider is the dependence of CollectionManager on
DatabaseAccess as a "big lock", which adds this complexity.

--
Configure bugmail: https://bugs.kde.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
_______________________________________________
Digikam-devel mailing list
[hidden email]
https://mail.kde.org/mailman/listinfo/digikam-devel
Reply | Threaded
Open this post in threaded view
|

[Bug 286719] Digikam hang during startup (deadlock?)

Oldřich Jedlička
In reply to this post by Oldřich Jedlička
https://bugs.kde.org/show_bug.cgi?id=286719





--- Comment #7 from Oldřich Jedlička <oldium pro seznam cz>  2011-11-29 17:05:58 ---
Removing any (unnecessary) dependency from the database access layer looks more
than reasonable. From the architecture point of view the database access layer
should do the database access and nothing more.

--
Configure bugmail: https://bugs.kde.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
_______________________________________________
Digikam-devel mailing list
[hidden email]
https://mail.kde.org/mailman/listinfo/digikam-devel
Reply | Threaded
Open this post in threaded view
|

[Bug 286719] Digikam hang during startup (deadlock?)

Gilles Caulier-4
In reply to this post by Oldřich Jedlička
https://bugs.kde.org/show_bug.cgi?id=286719

--- Comment #8 from Gilles Caulier <[hidden email]> ---
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

--
You are receiving this mail because:
You are the assignee for the bug.
_______________________________________________
Digikam-devel mailing list
[hidden email]
https://mail.kde.org/mailman/listinfo/digikam-devel
Reply | Threaded
Open this post in threaded view
|

[Bug 286719] Digikam hang during startup (deadlock?)

Oldřich Jedlička
In reply to this post by Oldřich Jedlička
https://bugs.kde.org/show_bug.cgi?id=286719

Oldřich Jedlička <[hidden email]> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |RESOLVED
         Resolution|---                         |FIXED

--- Comment #9 from Oldřich Jedlička <[hidden email]> ---
Works for me with 2.6.0.

--
You are receiving this mail because:
You are the assignee for the bug.
_______________________________________________
Digikam-devel mailing list
[hidden email]
https://mail.kde.org/mailman/listinfo/digikam-devel
Reply | Threaded
Open this post in threaded view
|

[Bug 286719] Digikam hang during startup (deadlock?)

Gilles Caulier-4
In reply to this post by Oldřich Jedlička
https://bugs.kde.org/show_bug.cgi?id=286719

Gilles Caulier <[hidden email]> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Version Fixed In|                            |2.7.0

--
You are receiving this mail because:
You are the assignee for the bug.
_______________________________________________
Digikam-devel mailing list
[hidden email]
https://mail.kde.org/mailman/listinfo/digikam-devel
Reply | Threaded
Open this post in threaded view
|

[digikam] [Bug 286719] Digikam hang during startup (deadlock?)

bugzilla_noreply
In reply to this post by Oldřich Jedlička
https://bugs.kde.org/show_bug.cgi?id=286719

[hidden email] changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
          Component|Database                    |Database-Scan

--
You are receiving this mail because:
You are the assignee for the bug.