void BackgroundSync::start(OperationContext* txn) { massert(16235, "going to start syncing, but buffer is not empty", _buffer.empty()); long long lastFetchedHash = _readLastAppliedHash(txn); stdx::lock_guard<stdx::mutex> lk(_mutex); _pause = false; // reset _last fields with current oplog data _lastOpTimeFetched = _replCoord->getMyLastOptime(); _lastFetchedHash = lastFetchedHash; LOG(1) << "bgsync fetch queue set to: " << _lastOpTimeFetched << " " << _lastFetchedHash; }
void BackgroundSync::loadLastAppliedHash(OperationContext* txn) { long long result = _readLastAppliedHash(txn); boost::lock_guard<boost::mutex> lk(_mutex); _lastAppliedHash = result; }