summaryrefslogtreecommitdiffstats
path: root/common/changereplay.cpp
diff options
context:
space:
mode:
authorChristian Mollekopf <chrigi_1@fastmail.fm>2016-06-17 09:10:16 +0200
committerChristian Mollekopf <chrigi_1@fastmail.fm>2016-06-17 09:10:16 +0200
commitb2f52e3ffc5b2305f5275f18376daac7612f2e7b (patch)
tree4c4e11419bb0d0f524fb0f9dace771245370e8df /common/changereplay.cpp
parent8369e759bac9f52a6ef75d01972f482e772c7492 (diff)
downloadsink-b2f52e3ffc5b2305f5275f18376daac7612f2e7b.tar.gz
sink-b2f52e3ffc5b2305f5275f18376daac7612f2e7b.zip
If the changereplay failed we have to stop.
Otherwise we would never replay changes that failed because we were offline or so.
Diffstat (limited to 'common/changereplay.cpp')
-rw-r--r--common/changereplay.cpp7
1 files changed, 3 insertions, 4 deletions
diff --git a/common/changereplay.cpp b/common/changereplay.cpp
index a17fc88..51443e8 100644
--- a/common/changereplay.cpp
+++ b/common/changereplay.cpp
@@ -96,7 +96,6 @@ KAsync::Job<void> ChangeReplay::replayNextRevision()
96 [&lastReplayedRevision, type, this, &replayJob](const QByteArray &key, const QByteArray &value) -> bool { 96 [&lastReplayedRevision, type, this, &replayJob](const QByteArray &key, const QByteArray &value) -> bool {
97 Trace() << "Replaying " << key; 97 Trace() << "Replaying " << key;
98 replayJob = replay(type, key, value); 98 replayJob = replay(type, key, value);
99 // TODO make for loop async, and pass to async replay function together with type
100 return false; 99 return false;
101 }, 100 },
102 [key](const Storage::Error &) { ErrorMsg() << "Failed to replay change " << key; }); 101 [key](const Storage::Error &) { ErrorMsg() << "Failed to replay change " << key; });
@@ -108,9 +107,9 @@ KAsync::Job<void> ChangeReplay::replayNextRevision()
108 }, 107 },
109 [this, revision, recordReplayedRevision](int, QString) { 108 [this, revision, recordReplayedRevision](int, QString) {
110 Trace() << "Change replay failed" << revision; 109 Trace() << "Change replay failed" << revision;
111 recordReplayedRevision(revision); 110 //We're probably not online or so, so postpone retrying
112 //replay until we're done 111 mReplayInProgress = false;
113 replayNextRevision().exec(); 112 emit changesReplayed();
114 }); 113 });
115 } else { 114 } else {
116 Trace() << "No changes to replay"; 115 Trace() << "No changes to replay";