The MetadataMover class has an internal queue which is run asynchronously and is used to process events. This queue can be removed completed, and the events can be processed as they arrive. Relevant code: baloo/src/file/metadatamover.cpp
Git commit 3b5cb08a5450cc01e7700697e46262bf80847324 by Vishesh Handa, on behalf of Nitul Datt. Committed on 02/04/2014 at 11:02. Pushed by vhanda into branch 'KDE/4.13'. MetaDataMover: Remove internal queue and make it sync The MetaDataMover is fast enough that it does not need to be asynchronous. It's mostly just executing a single SQL query, and even in the cases that it does block, that's okay. All other operations will continue after that. Also, it was never really asynchronous it just queued the operation and executed it later in the same thread. REVIEW: 116919 M +0 -1 src/file/CMakeLists.txt M +0 -4 src/file/autotest/metadatamovertest.cpp M +8 -67 src/file/metadatamover.cpp M +1 -20 src/file/metadatamover.h D +0 -27 src/file/updaterequest.cpp D +0 -67 src/file/updaterequest.h http://commits.kde.org/baloo/3b5cb08a5450cc01e7700697e46262bf80847324