From f83893e4a840cbe77b08bdf09a384b6d22ed1d1c Mon Sep 17 00:00:00 2001 From: Christian Mollekopf Date: Tue, 17 Jan 2017 20:17:46 +0100 Subject: Avoid unnecessary replay requests. A single request will replay until the latest revision. --- common/synchronizer.cpp | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'common/synchronizer.cpp') diff --git a/common/synchronizer.cpp b/common/synchronizer.cpp index cfe1f09..cfd2c10 100644 --- a/common/synchronizer.cpp +++ b/common/synchronizer.cpp @@ -381,6 +381,12 @@ Sink::Storage::DataStore::DataStore::Transaction &Synchronizer::syncTransaction( void Synchronizer::revisionChanged() { + //One replay request is enough + for (const auto &r : mSyncRequestQueue) { + if (r.requestType == Synchronizer::SyncRequest::ChangeReplay) { + return; + } + } mSyncRequestQueue << Synchronizer::SyncRequest{Synchronizer::SyncRequest::ChangeReplay}; processSyncQueue().exec(); } -- cgit v1.2.3