diff options
author | Henrik Edin <henrik.edin@mongodb.com> | 2018-08-03 13:26:49 -0400 |
---|---|---|
committer | Henrik Edin <henrik.edin@mongodb.com> | 2018-09-18 11:06:07 -0400 |
commit | 169119bf4bf823f503c66262b438e2828d1f83b5 (patch) | |
tree | 5903229b0238cf0fc48c859ab5d7655bd015fda3 /src/mongo/db/service_liaison_mongod.cpp | |
parent | 07ecc05d44c2a4f443bccf96004a1da16b2e3984 (diff) | |
download | mongo-169119bf4bf823f503c66262b438e2828d1f83b5.tar.gz |
SERVER-36704 Logical session support for embedded, behaves as standalone mongod
Diffstat (limited to 'src/mongo/db/service_liaison_mongod.cpp')
-rw-r--r-- | src/mongo/db/service_liaison_mongod.cpp | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/src/mongo/db/service_liaison_mongod.cpp b/src/mongo/db/service_liaison_mongod.cpp index a6e91477f6c..0d5b5cb6970 100644 --- a/src/mongo/db/service_liaison_mongod.cpp +++ b/src/mongo/db/service_liaison_mongod.cpp @@ -36,7 +36,6 @@ #include "mongo/db/service_context.h" #include "mongo/stdx/mutex.h" #include "mongo/util/clock_source.h" -#include "mongo/util/periodic_runner.h" namespace mongo { @@ -86,12 +85,17 @@ LogicalSessionIdSet ServiceLiaisonMongod::getOpenCursorSessions() const { void ServiceLiaisonMongod::scheduleJob(PeriodicRunner::PeriodicJob job) { invariant(hasGlobalServiceContext()); - getGlobalServiceContext()->getPeriodicRunner()->scheduleJob(std::move(job)); + auto jobHandle = getGlobalServiceContext()->getPeriodicRunner()->makeJob(std::move(job)); + jobHandle->start(); + _jobs.push_back(std::move(jobHandle)); } void ServiceLiaisonMongod::join() { invariant(hasGlobalServiceContext()); - getGlobalServiceContext()->getPeriodicRunner()->shutdown(); + for (auto&& jobHandle : _jobs) { + jobHandle->stop(); + } + _jobs.clear(); } Date_t ServiceLiaisonMongod::now() const { |