diff options
Diffstat (limited to 'src/mongo/s/d_state.cpp')
-rw-r--r-- | src/mongo/s/d_state.cpp | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/src/mongo/s/d_state.cpp b/src/mongo/s/d_state.cpp index 626881edafc..960ede1413e 100644 --- a/src/mongo/s/d_state.cpp +++ b/src/mongo/s/d_state.cpp @@ -477,13 +477,16 @@ namespace mongo { ShardedConnectionInfo::addHook(); - vector<string> configdbs; - splitStringDelim(server, &configdbs, ','); + std::string errmsg; + ConnectionString configServerCS = ConnectionString::parse(server, errmsg); + uassert(28631, + str::stream() << "Invalid config server connection string: " << errmsg, + configServerCS.isValid()); - configServer.init(configdbs); + configServer.init(configServerCS); uassert(28627, "failed to initialize catalog manager", - grid.initCatalogManager(configdbs)); + grid.initCatalogManager(configServerCS)); _enabled = true; } |