summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorAmirsaman Memaripour <amirsaman.memaripour@10gen.com>2020-01-29 15:24:42 +0000
committerevergreen <evergreen@mongodb.com>2020-01-29 15:24:42 +0000
commitbb57005306f9d0aeb310a33384cb0a31df3490aa (patch)
tree22faeb3e0fdec4f32468338e4fff8dd84409c456 /src
parentc331a0a4ea00253d257a4c31e1ad11752ccbdfd1 (diff)
downloadmongo-bb57005306f9d0aeb310a33384cb0a31df3490aa.tar.gz
Revert SERVER-45584
Diffstat (limited to 'src')
-rw-r--r--src/mongo/db/write_concern_options.cpp9
-rw-r--r--src/mongo/db/write_concern_options_test.cpp9
2 files changed, 1 insertions, 17 deletions
diff --git a/src/mongo/db/write_concern_options.cpp b/src/mongo/db/write_concern_options.cpp
index 3cf49672de2..80e1c8bd0e4 100644
--- a/src/mongo/db/write_concern_options.cpp
+++ b/src/mongo/db/write_concern_options.cpp
@@ -35,7 +35,6 @@
#include "mongo/base/string_data.h"
#include "mongo/bson/util/bson_extract.h"
#include "mongo/db/field_parser.h"
-#include "mongo/db/repl/repl_set_config.h"
#include "mongo/util/str.h"
namespace mongo {
@@ -152,13 +151,7 @@ StatusWith<WriteConcernOptions> WriteConcernOptions::parse(const BSONObj& obj) {
}
if (wEl.isNumber()) {
- auto wNumNodes = wEl.safeNumberLong();
- if (wNumNodes < 0 || wNumNodes > static_cast<long long>(repl::ReplSetConfig::kMaxMembers)) {
- return Status(ErrorCodes::FailedToParse,
- str::stream() << "w has to be a non-negative number and not greater than "
- << repl::ReplSetConfig::kMaxMembers);
- }
- writeConcern.wNumNodes = static_cast<int>(wNumNodes);
+ writeConcern.wNumNodes = wEl.numberInt();
writeConcern.usedDefaultW = false;
} else if (wEl.type() == String) {
writeConcern.wNumNodes = 0;
diff --git a/src/mongo/db/write_concern_options_test.cpp b/src/mongo/db/write_concern_options_test.cpp
index 70df61cb16a..d99eaab2204 100644
--- a/src/mongo/db/write_concern_options_test.cpp
+++ b/src/mongo/db/write_concern_options_test.cpp
@@ -110,15 +110,6 @@ TEST(WriteConcernOptionsTest, ParseReturnsFailedToParseIfWIsNotNumberOrString) {
ASSERT_EQUALS("w has to be a number or a string", status.reason());
}
-TEST(WriteConcernOptionsTest, ParseReturnsFailedToParseIfWIsNegativeOrExceedsMaxMembers) {
- auto st1 = WriteConcernOptions::parse(BSON("w" << 123)).getStatus();
- ASSERT_EQUALS(ErrorCodes::FailedToParse, st1);
-
- auto st2 = WriteConcernOptions::parse(BSON("w" << -1)).getStatus();
- ASSERT_EQUALS(ErrorCodes::FailedToParse, st2);
- ASSERT_EQUALS(st1.reason(), st2.reason());
-}
-
TEST(WriteConcernOptionsTest, ParseSetsWNumNodesIfWIsANumber) {
auto sw = WriteConcernOptions::parse(BSON("w" << 3));
ASSERT_OK(sw.getStatus());