diff options
author | Christian Mollekopf <chrigi_1@fastmail.fm> | 2016-06-17 09:10:16 +0200 |
---|---|---|
committer | Christian Mollekopf <chrigi_1@fastmail.fm> | 2016-06-17 09:10:16 +0200 |
commit | b2f52e3ffc5b2305f5275f18376daac7612f2e7b (patch) | |
tree | 4c4e11419bb0d0f524fb0f9dace771245370e8df /common/changereplay.cpp | |
parent | 8369e759bac9f52a6ef75d01972f482e772c7492 (diff) | |
download | sink-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.cpp | 7 |
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"; |