diff options
Diffstat (limited to 'common/queryrunner.cpp')
-rw-r--r-- | common/queryrunner.cpp | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/common/queryrunner.cpp b/common/queryrunner.cpp index 22682d3..b6f5b51 100644 --- a/common/queryrunner.cpp +++ b/common/queryrunner.cpp | |||
@@ -329,6 +329,9 @@ std::function<bool(const Sink::ApplicationDomain::ApplicationDomainType::Ptr &do | |||
329 | template<class DomainType> | 329 | template<class DomainType> |
330 | qint64 QueryWorker<DomainType>::load(const Sink::Query &query, const std::function<ResultSet(Sink::Storage::Transaction &, QSet<QByteArray> &)> &baseSetRetriever, Sink::ResultProviderInterface<typename DomainType::Ptr> &resultProvider, bool initialQuery) | 330 | qint64 QueryWorker<DomainType>::load(const Sink::Query &query, const std::function<ResultSet(Sink::Storage::Transaction &, QSet<QByteArray> &)> &baseSetRetriever, Sink::ResultProviderInterface<typename DomainType::Ptr> &resultProvider, bool initialQuery) |
331 | { | 331 | { |
332 | QTime time; | ||
333 | time.start(); | ||
334 | |||
332 | Sink::Storage storage(Sink::storageLocation(), mResourceInstanceIdentifier); | 335 | Sink::Storage storage(Sink::storageLocation(), mResourceInstanceIdentifier); |
333 | storage.setDefaultErrorHandler([](const Sink::Storage::Error &error) { | 336 | storage.setDefaultErrorHandler([](const Sink::Storage::Error &error) { |
334 | Warning() << "Error during query: " << error.store << error.message; | 337 | Warning() << "Error during query: " << error.store << error.message; |
@@ -338,8 +341,11 @@ qint64 QueryWorker<DomainType>::load(const Sink::Query &query, const std::functi | |||
338 | 341 | ||
339 | QSet<QByteArray> remainingFilters; | 342 | QSet<QByteArray> remainingFilters; |
340 | auto resultSet = baseSetRetriever(transaction, remainingFilters); | 343 | auto resultSet = baseSetRetriever(transaction, remainingFilters); |
344 | Trace() << "Base set retrieved. " << time.elapsed(); | ||
341 | auto filteredSet = filterSet(resultSet, getFilter(remainingFilters, query), db, initialQuery); | 345 | auto filteredSet = filterSet(resultSet, getFilter(remainingFilters, query), db, initialQuery); |
346 | Trace() << "Filtered set retrieved. " << time.elapsed(); | ||
342 | replaySet(filteredSet, resultProvider, query.requestedProperties); | 347 | replaySet(filteredSet, resultProvider, query.requestedProperties); |
348 | Trace() << "Filtered set replayed. " << time.elapsed(); | ||
343 | resultProvider.setRevision(Sink::Storage::maxRevision(transaction)); | 349 | resultProvider.setRevision(Sink::Storage::maxRevision(transaction)); |
344 | return Sink::Storage::maxRevision(transaction); | 350 | return Sink::Storage::maxRevision(transaction); |
345 | } | 351 | } |