diff options
author | Randolph Tan <randolph@10gen.com> | 2014-07-15 16:13:31 -0400 |
---|---|---|
committer | Randolph Tan <randolph@10gen.com> | 2014-07-15 16:13:50 -0400 |
commit | 37f2a1e3b724dbd9e1f8eafd4ac87c5bf613c048 (patch) | |
tree | 2bcd919c93803f294d562761c2920fc9dd712bcd /src/mongo/db/write_concern_options.cpp | |
parent | d60fd22dec1c0bd104622eab463cdbba18bf11a9 (diff) | |
download | mongo-37f2a1e3b724dbd9e1f8eafd4ac87c5bf613c048.tar.gz |
Revert "SERVER-14041 enhance secondaryThrottle parameter"
This reverts commit fa1233fbe4a48ef0675820f381987f1df4f42f75.
Diffstat (limited to 'src/mongo/db/write_concern_options.cpp')
-rw-r--r-- | src/mongo/db/write_concern_options.cpp | 103 |
1 files changed, 0 insertions, 103 deletions
diff --git a/src/mongo/db/write_concern_options.cpp b/src/mongo/db/write_concern_options.cpp index 90690b87599..848c4e4464c 100644 --- a/src/mongo/db/write_concern_options.cpp +++ b/src/mongo/db/write_concern_options.cpp @@ -27,9 +27,7 @@ #include "mongo/db/write_concern_options.h" -#include "mongo/bson/bson_field.h" #include "mongo/client/dbclientinterface.h" -#include "mongo/db/field_parser.h" namespace mongo { @@ -38,27 +36,6 @@ namespace mongo { const BSONObj WriteConcernOptions::AllConfigs = BSONObj(); const BSONObj WriteConcernOptions::Unacknowledged(BSON("w" << W_NONE)); - static const BSONField<bool> mongosSecondaryThrottleField("_secondaryThrottle", true); - static const BSONField<bool> secondaryThrottleField("secondaryThrottle", true); - static const BSONField<BSONObj> writeConcernField("writeConcern"); - - WriteConcernOptions::WriteConcernOptions(int numNodes, - SyncMode sync, - int timeout): - syncMode(sync), - wNumNodes(numNodes), - wTimeout(timeout) { - } - - WriteConcernOptions::WriteConcernOptions(const std::string& mode, - SyncMode sync, - int timeout): - syncMode(sync), - wNumNodes(0), - wMode(mode), - wTimeout(timeout) { - } - Status WriteConcernOptions::parse( const BSONObj& obj ) { if ( obj.isEmpty() ) { return Status( ErrorCodes::FailedToParse, "write concern object cannot be empty" ); @@ -109,84 +86,4 @@ namespace mongo { return Status::OK(); } - - Status WriteConcernOptions::parseSecondaryThrottle(const BSONObj& doc, - BSONObj* rawWriteConcernObj) { - string errMsg; - bool isSecondaryThrottle; - FieldParser::FieldState fieldState = FieldParser::extract(doc, - secondaryThrottleField, - &isSecondaryThrottle, - &errMsg); - if (fieldState == FieldParser::FIELD_INVALID) { - return Status(ErrorCodes::FailedToParse, errMsg); - } - - if (fieldState != FieldParser::FIELD_SET) { - fieldState = FieldParser::extract(doc, - mongosSecondaryThrottleField, - &isSecondaryThrottle, - &errMsg); - - if (fieldState == FieldParser::FIELD_INVALID) { - return Status(ErrorCodes::FailedToParse, errMsg); - } - } - - BSONObj dummyBSON; - if (!rawWriteConcernObj) { - rawWriteConcernObj = &dummyBSON; - } - - fieldState = FieldParser::extract(doc, - writeConcernField, - rawWriteConcernObj, - &errMsg); - if (fieldState == FieldParser::FIELD_INVALID) { - return Status(ErrorCodes::FailedToParse, errMsg); - } - - if (!isSecondaryThrottle) { - if (!rawWriteConcernObj->isEmpty()) { - return Status(ErrorCodes::UnsupportedFormat, - "Cannot have write concern when secondary throttle is false"); - } - - wNumNodes = 1; - return Status::OK(); - } - - if (rawWriteConcernObj->isEmpty()) { - return Status(ErrorCodes::WriteConcernNotDefined, - "Secondary throttle is on, but write concern is not specified"); - } - - return parse(*rawWriteConcernObj); - } - - BSONObj WriteConcernOptions::toBSON() const { - BSONObjBuilder builder; - - if (wMode.empty()) { - builder.append("w", wNumNodes); - } - else { - builder.append("w", wMode); - } - - if (syncMode == FSYNC) { - builder.append("fsync", true); - } - else if (syncMode == JOURNAL) { - builder.append("j", true); - } - - builder.append("wtimeout", wTimeout); - - return builder.obj(); - } - - bool WriteConcernOptions::shouldWaitForOtherNodes() const { - return !wMode.empty() || wNumNodes > 1; - } } |