diff options
Diffstat (limited to 'searchcore/src')
-rw-r--r-- | searchcore/src/vespa/searchcore/proton/server/storeonlyfeedview.cpp | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/searchcore/src/vespa/searchcore/proton/server/storeonlyfeedview.cpp b/searchcore/src/vespa/searchcore/proton/server/storeonlyfeedview.cpp index f34885974b8..4479ae37286 100644 --- a/searchcore/src/vespa/searchcore/proton/server/storeonlyfeedview.cpp +++ b/searchcore/src/vespa/searchcore/proton/server/storeonlyfeedview.cpp @@ -494,6 +494,12 @@ StoreOnlyFeedView::makeUpdatedDocument(bool useDocStore, Lid lid, const Document assert(onWriteDone->is_replay() && !useDocStore); } } + /* + * forceCommitAndWait() does not wait for this task to complete but it waits for the + * summary executor task using the future stream (cf. lambdas in putSummary() and + * putSummaryNoop()). Reset reference to operation done context here to avoid keeping it + * from being destroyed before forceCommitAndWait() returns. + */ onWriteDone.reset(); promisedDoc.set_value(std::move(newDoc)); promisedStream.set_value(std::move(newStream)); |