diff options
author | Samy Lanka <samy.lanka@mongodb.com> | 2021-05-12 04:05:56 +0000 |
---|---|---|
committer | Evergreen Agent <no-reply@evergreen.mongodb.com> | 2021-05-20 21:14:11 +0000 |
commit | 7f901206919def001d0128a2907601a1ff2143b7 (patch) | |
tree | fb383e4fae1cd1fe7d973125d31c8cec1a8fb4b8 /src/mongo/db/commands.h | |
parent | fe0042206cc3ea6a0792a956a876d5793a1c67c2 (diff) | |
download | mongo-7f901206919def001d0128a2907601a1ff2143b7.tar.gz |
SERVER-56488 Change the default read concern to always be local
Diffstat (limited to 'src/mongo/db/commands.h')
-rw-r--r-- | src/mongo/db/commands.h | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/src/mongo/db/commands.h b/src/mongo/db/commands.h index 086f08ddda0..07c08e5000d 100644 --- a/src/mongo/db/commands.h +++ b/src/mongo/db/commands.h @@ -658,7 +658,8 @@ public: /** * Returns this invocation's support for readConcern. */ - virtual ReadConcernSupportResult supportsReadConcern(repl::ReadConcernLevel level) const { + virtual ReadConcernSupportResult supportsReadConcern(repl::ReadConcernLevel level, + bool isImplicitDefault) const { static const Status kReadConcernNotSupported{ErrorCodes::InvalidOptions, "read concern not supported"}; static const Status kDefaultReadConcernNotPermitted{ErrorCodes::InvalidOptions, @@ -686,7 +687,8 @@ public: return false; } - if (auto result = supportsReadConcern(repl::ReadConcernLevel::kMajorityReadConcern); + if (auto result = supportsReadConcern(repl::ReadConcernLevel::kMajorityReadConcern, + false /* isImplicitDefault */); result.readConcernSupport.isOK()) { // If the command supports read concern, it has storage and newtork implications. return false; @@ -860,11 +862,12 @@ public: * cases where it isn't supported. */ virtual ReadConcernSupportResult supportsReadConcern(const BSONObj& cmdObj, - repl::ReadConcernLevel level) const { + repl::ReadConcernLevel level, + bool isImplicitDefault) const { static const Status kReadConcernNotSupported{ErrorCodes::InvalidOptions, "read concern not supported"}; - static const Status kDefaultReadConcernNotPermitted{ErrorCodes::InvalidOptions, - "default read concern not permitted"}; + static const Status kDefaultReadConcernNotPermitted{ + ErrorCodes::InvalidOptions, "cluster wide default read concern not permitted"}; return {{level != repl::ReadConcernLevel::kLocalReadConcern, kReadConcernNotSupported}, {kDefaultReadConcernNotPermitted}}; } |