diff options
author | Henrik Edin <henrik.edin@mongodb.com> | 2018-08-03 14:25:05 -0400 |
---|---|---|
committer | Henrik Edin <henrik.edin@mongodb.com> | 2018-08-16 15:16:21 -0400 |
commit | 611460d96bf33a7654581ca23c4daad974b0ce45 (patch) | |
tree | 7d509226ebfb8f50716411cefd0133a61efaf0f4 /src/mongo/embedded/embedded.cpp | |
parent | 7c098544dfddc623cadf65a3be0291b61de681d7 (diff) | |
download | mongo-611460d96bf33a7654581ca23c4daad974b0ce45.tar.gz |
SERVER-33908 Periodic runner implementation for embedded.
It doesn't use threads and instead exposes a pump function where the jobs execute on the calling thread.
Diffstat (limited to 'src/mongo/embedded/embedded.cpp')
-rw-r--r-- | src/mongo/embedded/embedded.cpp | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/mongo/embedded/embedded.cpp b/src/mongo/embedded/embedded.cpp index 2be60864efc..fa520e22ac3 100644 --- a/src/mongo/embedded/embedded.cpp +++ b/src/mongo/embedded/embedded.cpp @@ -56,6 +56,7 @@ #include "mongo/db/storage/encryption_hooks.h" #include "mongo/db/storage/storage_engine_init.h" #include "mongo/db/ttl.h" +#include "mongo/embedded/periodic_runner_embedded.h" #include "mongo/embedded/replication_coordinator_embedded.h" #include "mongo/embedded/service_entry_point_embedded.h" #include "mongo/logger/log_component.h" @@ -300,6 +301,11 @@ ServiceContext* initialize(const char* yaml_config) { restartInProgressIndexesFromLastShutdown(startupOpCtx.get()); } + auto periodicRunner = std::make_unique<PeriodicRunnerEmbedded>( + serviceContext, serviceContext->getPreciseClockSource()); + periodicRunner->startup(); + serviceContext->setPeriodicRunner(std::move(periodicRunner)); + // MessageServer::run will return when exit code closes its socket and we don't need the // operation context anymore startupOpCtx.reset(); |