summaryrefslogtreecommitdiff
path: root/src/mongo/db/repl/initial_sync_base_cloner.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mongo/db/repl/initial_sync_base_cloner.cpp')
-rw-r--r--src/mongo/db/repl/initial_sync_base_cloner.cpp19
1 files changed, 3 insertions, 16 deletions
diff --git a/src/mongo/db/repl/initial_sync_base_cloner.cpp b/src/mongo/db/repl/initial_sync_base_cloner.cpp
index c08d102ca9c..f91c75aa92d 100644
--- a/src/mongo/db/repl/initial_sync_base_cloner.cpp
+++ b/src/mongo/db/repl/initial_sync_base_cloner.cpp
@@ -104,27 +104,14 @@ void InitialSyncBaseCloner::handleStageAttemptFailed(BaseClonerStage* stage, Sta
}
Status InitialSyncBaseCloner::checkSyncSourceIsStillValid() {
+ auto status = checkInitialSyncIdIsUnchanged();
+ if (!status.isOK())
+ return status;
- WireVersion wireVersion;
- {
- stdx::lock_guard<ReplSyncSharedData> lk(*getSharedData());
- auto wireVersionOpt = getSharedData()->getSyncSourceWireVersion(lk);
- // The wire version should always have been set by the time this is called.
- invariant(wireVersionOpt);
- wireVersion = *wireVersionOpt;
- }
- if (wireVersion >= WireVersion::RESUMABLE_INITIAL_SYNC) {
- auto status = checkInitialSyncIdIsUnchanged();
- if (!status.isOK())
- return status;
- }
return checkRollBackIdIsUnchanged();
}
Status InitialSyncBaseCloner::checkInitialSyncIdIsUnchanged() {
- uassert(ErrorCodes::InitialSyncFailure,
- "Sync source was downgraded and no longer supports resumable initial sync",
- getClient()->getMaxWireVersion() >= WireVersion::RESUMABLE_INITIAL_SYNC);
BSONObj initialSyncId;
try {
initialSyncId = getClient()->findOne(