diff options
author | Christian Mollekopf <chrigi_1@fastmail.fm> | 2017-01-22 18:25:31 +0100 |
---|---|---|
committer | Christian Mollekopf <chrigi_1@fastmail.fm> | 2017-01-22 18:25:31 +0100 |
commit | e513ee41adb6061aa72de8bfe49d117f47c1545b (patch) | |
tree | d91fd8abb5d2f47ec24dff497bcf18e218f01641 /common/commandprocessor.cpp | |
parent | ec16f3b92d6017462f4bba8354b53d1707850430 (diff) | |
download | sink-e513ee41adb6061aa72de8bfe49d117f47c1545b.tar.gz sink-e513ee41adb6061aa72de8bfe49d117f47c1545b.zip |
Support dependencies between sync requests.
If one sync task depends on the previous sync task we want to flush in
between, so we can query for the results of the previous sync request
locally.
If we detect such a dependency we temporarily halt all processing of
synchronization requests until the flush completes, so we can continue
processing.
Diffstat (limited to 'common/commandprocessor.cpp')
-rw-r--r-- | common/commandprocessor.cpp | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/common/commandprocessor.cpp b/common/commandprocessor.cpp index a6371be..5d5261f 100644 --- a/common/commandprocessor.cpp +++ b/common/commandprocessor.cpp | |||
@@ -331,6 +331,7 @@ KAsync::Job<void> CommandProcessor::flush(void const *command, size_t size) | |||
331 | mSynchronizer->flush(flushType, flushId); | 331 | mSynchronizer->flush(flushType, flushId); |
332 | } else { | 332 | } else { |
333 | SinkTraceCtx(mLogCtx) << "Emitting flush completion" << flushId; | 333 | SinkTraceCtx(mLogCtx) << "Emitting flush completion" << flushId; |
334 | mSynchronizer->flushComplete(flushId); | ||
334 | Sink::Notification n; | 335 | Sink::Notification n; |
335 | n.type = Sink::Notification::FlushCompletion; | 336 | n.type = Sink::Notification::FlushCompletion; |
336 | n.id = flushId; | 337 | n.id = flushId; |