diff options
author | Spencer T Brody <spencer@mongodb.com> | 2015-12-22 16:15:40 -0500 |
---|---|---|
committer | Spencer T Brody <spencer@mongodb.com> | 2016-01-13 15:44:51 -0500 |
commit | ecfe266a47498ba18db62fe97f5d4298c16e23af (patch) | |
tree | 0ea6c31f0a44367c89351242ef11d331498b03ad /src | |
parent | 4a9123577a4aac9ab3e14bddb519d61082dc2101 (diff) | |
download | mongo-ecfe266a47498ba18db62fe97f5d4298c16e23af.tar.gz |
SERVER-20422 SERVER-21995 Allow overriding the cached config server string in SSV after upgrade from SCCC to CSRS
(cherry picked from commit eb140e730ffdcf99f26d9f215dd4391b8978acc9)
Diffstat (limited to 'src')
-rw-r--r-- | src/mongo/db/s/set_shard_version_command.cpp | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/src/mongo/db/s/set_shard_version_command.cpp b/src/mongo/db/s/set_shard_version_command.cpp index 4606720cb33..e0e691117fe 100644 --- a/src/mongo/db/s/set_shard_version_command.cpp +++ b/src/mongo/db/s/set_shard_version_command.cpp @@ -363,6 +363,18 @@ private: return true; } + if (givenConnStr.type() == ConnectionString::SET && + storedConnStr.type() == ConnectionString::SYNC) { + log() << "Detected upgrade from mirrored (SCCC) config servers to " + "replica set (CSRS) config servers. setShardVersion was given: " + << givenConnStr + << " for the config server connection string, but has stored: " + << storedConnStr; + storedConnStr = givenConnStr; + + return true; + } + const auto& storedRawConfigString = storedConnStr.toString(); if (storedRawConfigString == configdb) { return true; |