summaryrefslogtreecommitdiff
path: root/src/mongo/s/commands/commands_public.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mongo/s/commands/commands_public.cpp')
-rw-r--r--src/mongo/s/commands/commands_public.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/mongo/s/commands/commands_public.cpp b/src/mongo/s/commands/commands_public.cpp
index 6215e4f1e4e..c5e7f38b67c 100644
--- a/src/mongo/s/commands/commands_public.cpp
+++ b/src/mongo/s/commands/commands_public.cpp
@@ -86,6 +86,10 @@ bool cursorCommandPassthrough(OperationContext* txn,
int options,
BSONObjBuilder* out) {
const auto shard = grid.shardRegistry()->getShard(txn, conf->getPrimaryId());
+ if (!shard) {
+ return Command::appendCommandStatus(
+ *out, {ErrorCodes::ShardNotFound, "failed to find a valid shard"});
+ }
ScopedDbConnection conn(shard->getConnString());
auto cursor = conn->query(str::stream() << conf->name() << ".$cmd",
cmdObj,