BackgroundSync::BackgroundSync() : _buffer(bufferMaxSizeGauge, &getSize), _threadPoolTaskExecutor(makeThreadPool(), executor::makeNetworkInterface()), _lastOpTimeFetched(Timestamp(std::numeric_limits<int>::max(), 0), std::numeric_limits<long long>::max()), _lastFetchedHash(0), _pause(true), _appliedBuffer(true), _replCoord(getGlobalReplicationCoordinator()), _initialSyncRequestedFlag(false), _indexPrefetchConfig(PREFETCH_ALL) {}
void ReplicationCoordinatorExternalStateImpl::startThreads(const ReplSettings& settings) { stdx::lock_guard<stdx::mutex> lk(_threadMutex); if (_startedThreads) { return; } log() << "Starting replication storage threads"; _service->getGlobalStorageEngine()->setJournalListener(this); auto hookList = stdx::make_unique<rpc::EgressMetadataHookList>(); hookList->addHook(stdx::make_unique<rpc::LogicalTimeMetadataHook>(_service)); _taskExecutor = stdx::make_unique<executor::ThreadPoolTaskExecutor>( makeThreadPool(), executor::makeNetworkInterface("NetworkInterfaceASIO-RS", nullptr, std::move(hookList))); _taskExecutor->startup(); _writerPool = SyncTail::makeWriterPool(); _startedThreads = true; }
void ReplicationCoordinatorExternalStateImpl::startThreads(const ReplSettings& settings) { stdx::lock_guard<stdx::mutex> lk(_threadMutex); if (_startedThreads) { return; } log() << "Starting replication storage threads"; if (settings.isMajorityReadConcernEnabled() || enableReplSnapshotThread) { _snapshotThread = SnapshotThread::start(getGlobalServiceContext()); } getGlobalServiceContext()->getGlobalStorageEngine()->setJournalListener(this); _taskExecutor = stdx::make_unique<executor::ThreadPoolTaskExecutor>( makeThreadPool(), executor::makeNetworkInterface("NetworkInterfaceASIO-RS")); _taskExecutor->startup(); _writerPool = SyncTail::makeWriterPool(); _storageInterface->startup(); _startedThreads = true; }
void ThreadPoolTest::setUp() { _threadPool = makeThreadPool(); }