Review Request: Improve SqlMeta thread safety
Mark Kretschmann
kretschmann at kde.org
Sun Oct 31 10:07:46 CET 2010
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://git.reviewboard.kde.org/r/100098/#review227
-----------------------------------------------------------
Ship it!
Let's get this into mainline. It's the one and only way to really find all bugs.
- Mark
On 2010-10-30 14:15:21, Ralf Engels wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> http://git.reviewboard.kde.org/r/100098/
> -----------------------------------------------------------
>
> (Updated 2010-10-30 14:15:21)
>
>
> Review request for Amarok.
>
>
> Summary
> -------
>
> This patch improves the SqlMeta thread safety.
> It has several parts:
> - Use QReadWriteLock for SqlTrack.
> For this I also needed to pull the read accessor functions into the .cpp
> - SqlCollection is a const pointer.
> All metas are directly dependent on the SqlCollection and it could and should never change.
> Using weak pointers here is not needed.
> Note that now the access to m_collection is also thread safe as it's const
> - SqlAlbum::setCompilation did modify the old album
> This was changed an a new album will be created.
> The positive side effect is that the UI will now update directly if setting a compilation
> - SqlAlbum::setImage will now copy embedded images directly when set
> If the track-uid is set (maybe from another thread) the cover image will still be found.
> Note that the image cache is and was not connected to the track uid.
>
>
> This addresses bug 254631.
> https://bugs.kde.org/show_bug.cgi?id=254631
>
>
> Diffs
> -----
>
> src/core-impl/collections/sqlcollection/CapabilityDelegateImpl.cpp 0e3578a
> src/core-impl/collections/sqlcollection/SqlCollection.cpp b88d257
> src/core-impl/collections/sqlcollection/SqlMeta.h cc680ec
> src/core-impl/collections/sqlcollection/SqlMeta.cpp 7a210d3
> src/core-impl/collections/sqlcollection/SqlRegistry.h 66ba632
> src/core-impl/collections/sqlcollection/SqlRegistry.cpp e1b3571
> tests/core-impl/collections/sqlcollection/TestSqlArtist.cpp 270874b
>
> Diff: http://git.reviewboard.kde.org/r/100098/diff
>
>
> Testing
> -------
>
> setting and unsetting compilation
> changing album name
> scanning and fully scanning collection
>
>
> Thanks,
>
> Ralf
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.kde.org/pipermail/amarok-devel/attachments/20101031/e0de85b5/attachment.htm
More information about the Amarok-devel
mailing list