diff options
author | Kaloian Manassiev <kaloian.manassiev@mongodb.com> | 2017-07-27 10:31:56 -0400 |
---|---|---|
committer | Kaloian Manassiev <kaloian.manassiev@mongodb.com> | 2017-07-28 16:51:40 -0400 |
commit | 3262710483e03495606cb2d990ceab132623ffb4 (patch) | |
tree | 3008d68b4571870b4c74a661e35717cc67935df1 /src | |
parent | 940bb462dc957ad76631378d799ec5b29944054b (diff) | |
download | mongo-3262710483e03495606cb2d990ceab132623ffb4.tar.gz |
SERVER-30333 Uassert if chunk metadata references an invalid shard
... instead of dereferencing a null pointer.
Diffstat (limited to 'src')
-rw-r--r-- | src/mongo/s/chunk_manager.cpp | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/mongo/s/chunk_manager.cpp b/src/mongo/s/chunk_manager.cpp index f785e748c54..29e596948d4 100644 --- a/src/mongo/s/chunk_manager.cpp +++ b/src/mongo/s/chunk_manager.cpp @@ -98,6 +98,9 @@ public: string shardFor(OperationContext* txn, const string& hostName) const final { const auto shard = grid.shardRegistry()->getShard(txn, hostName); + uassert(ErrorCodes::ShardNotFound, + str::stream() << "Shard " << hostName << " not found.", + shard); return shard->getId(); } |