summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/mongo/s/client/sharding_connection_hook.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/mongo/s/client/sharding_connection_hook.cpp b/src/mongo/s/client/sharding_connection_hook.cpp
index f74c9ea282d..3a5970b8091 100644
--- a/src/mongo/s/client/sharding_connection_hook.cpp
+++ b/src/mongo/s/client/sharding_connection_hook.cpp
@@ -40,6 +40,7 @@
#include "mongo/db/auth/authorization_session.h"
#include "mongo/db/auth/internal_user_auth.h"
#include "mongo/db/client.h"
+#include "mongo/rpc/get_status_from_command_result.h"
#include "mongo/rpc/metadata/audit_metadata.h"
#include "mongo/s/client/scc_fast_query_handler.h"
#include "mongo/s/cluster_last_error_info.h"
@@ -95,8 +96,9 @@ void ShardingConnectionHook::onCreate(DBClientBase* conn) {
}
} else if (conn->type() == ConnectionString::MASTER) {
BSONObj isMasterResponse;
- conn->runCommand("admin", BSON("ismaster" << 1), isMasterResponse);
-
+ if (!conn->runCommand("admin", BSON("ismaster" << 1), isMasterResponse)) {
+ uassertStatusOK(getStatusFromCommandResult(isMasterResponse));
+ }
long long configServerModeNumber;
Status status =