Review Request: Workaround for non-thread-safety of QDBusConnection

Thiago Macieira thiago at kde.org
Thu May 27 15:23:22 BST 2010


Note that there is a fix for the issue.

I will apply it to libdbus-1. I recommend all distributions upgrade to D-Bus 
1.4.0 as soon as it's out (there's no schedule for it).

Em Quinta-feira 27 Maio 2010, às 15:55:33, Sebastian Trueg escreveu:
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> http://reviewboard.kde.org/r/4166/
> -----------------------------------------------------------
> 
> Review request for kdelibs.
> 
> 
> Summary
> -------
> 
> As many of us experienced already QDBusConnection is not thread-safe. As
> you can see in Qt bug 7475
> (http://bugreports.qt.nokia.com/browse/QTBUG-7475) this is not Qt's fault
> but an issue in libdbus which has been reported a rather long time ago
> (https://bugs.freedesktop.org/show_bug.cgi?id=17754). In Nepomuk we work
> around this problem using a pool of connections, one for each thread. This
> is no perfect solution but at least we get no more crashes. The same
> applies to KSycoca, too. It is used in multi-threading situations at least
> in Dolphin. Thus, this patch moves the DBusConnectionPool to kdecore,
> making it privately available to all kdelibs components.
> 
> 
> Diffs
> -----
> 
>   trunk/KDE/kdelibs/kdecore/util/dbusconnectionpool.cpp PRE-CREATION
>   trunk/KDE/kdelibs/kdecore/CMakeLists.txt 1130392
>   trunk/KDE/kdelibs/kdecore/sycoca/ksycoca.cpp 1130392
>   trunk/KDE/kdelibs/kdecore/util/dbusconnectionpool.h PRE-CREATION
>   trunk/KDE/kdelibs/nepomuk/core/CMakeLists.txt 1130392
>   trunk/KDE/kdelibs/nepomuk/core/dbusconnectionpool.h 1130392
>   trunk/KDE/kdelibs/nepomuk/core/dbusconnectionpool.cpp 1130392
> 
> Diff: http://reviewboard.kde.org/r/4166/diff
> 
> 
> Testing
> -------
> 
> 
> Thanks,
> 
> Sebastian

-- 
Thiago Macieira - thiago (AT) macieira.info - thiago (AT) kde.org
  Senior Product Manager - Nokia, Qt Development Frameworks
      PGP/GPG: 0x6EF45358; fingerprint:
      E067 918B B660 DBD1 105C  966C 33F5 F005 6EF4 5358
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 190 bytes
Desc: This is a digitally signed message part.
URL: <http://mail.kde.org/pipermail/kde-core-devel/attachments/20100527/c6f21f59/attachment.sig>


More information about the kde-core-devel mailing list