summaryrefslogtreecommitdiff
path: root/src/mongo/s/catalog/type_chunk.cpp
diff options
context:
space:
mode:
authorKaloian Manassiev <kaloian.manassiev@mongodb.com>2016-05-09 15:24:03 -0400
committerKaloian Manassiev <kaloian.manassiev@mongodb.com>2016-05-10 10:20:32 -0400
commit1d897277a9226a374a084c86a922096071ad0b1b (patch)
tree587f4775d4917e4a65212a59e7bfb3cd3cca544a /src/mongo/s/catalog/type_chunk.cpp
parent9f00caa5498c7b885035b83cd0ee6b661e24004a (diff)
downloadmongo-1d897277a9226a374a084c86a922096071ad0b1b.tar.gz
SERVER-24071 Use ChunkRange for parsing and creating chunk bounds
Diffstat (limited to 'src/mongo/s/catalog/type_chunk.cpp')
-rw-r--r--src/mongo/s/catalog/type_chunk.cpp8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/mongo/s/catalog/type_chunk.cpp b/src/mongo/s/catalog/type_chunk.cpp
index c366f1b1514..07e07fdf370 100644
--- a/src/mongo/s/catalog/type_chunk.cpp
+++ b/src/mongo/s/catalog/type_chunk.cpp
@@ -70,6 +70,10 @@ StatusWith<ChunkRange> ChunkRange::fromBSON(const BSONObj& obj) {
return {minKeyStatus.code(),
str::stream() << "Invalid min key due to " << minKeyStatus.reason()};
}
+
+ if (minKey.Obj().isEmpty()) {
+ return {ErrorCodes::BadValue, "The min key cannot be empty"};
+ }
}
BSONElement maxKey;
@@ -79,6 +83,10 @@ StatusWith<ChunkRange> ChunkRange::fromBSON(const BSONObj& obj) {
return {maxKeyStatus.code(),
str::stream() << "Invalid max key due to " << maxKeyStatus.reason()};
}
+
+ if (maxKey.Obj().isEmpty()) {
+ return {ErrorCodes::BadValue, "The max key cannot be empty"};
+ }
}
return ChunkRange(minKey.Obj().getOwned(), maxKey.Obj().getOwned());