summaryrefslogtreecommitdiff
path: root/src/mongo/db
diff options
context:
space:
mode:
authorAli Mir <ali.mir@mongodb.com>2020-05-14 14:25:09 -0400
committerAli Mir <ali.mir@mongodb.com>2020-05-29 00:06:40 -0400
commit7434646ab0c2f94c4ae1cdefc1b5c3764964eb30 (patch)
tree4f1f4bc529023333ec87cd2bb7d04805a334a19c /src/mongo/db
parente44e6b4f3c0b7fbd604a452ac8afc59dda3f54fa (diff)
downloadmongo-SERVER-47782.tar.gz
SERVER-44782 Support atClusterTime in dbHash commandSERVER-47782
Diffstat (limited to 'src/mongo/db')
-rw-r--r--src/mongo/db/commands/dbhash.cpp16
1 files changed, 16 insertions, 0 deletions
diff --git a/src/mongo/db/commands/dbhash.cpp b/src/mongo/db/commands/dbhash.cpp
index 2d686835f81..30ac4e43d5c 100644
--- a/src/mongo/db/commands/dbhash.cpp
+++ b/src/mongo/db/commands/dbhash.cpp
@@ -88,6 +88,22 @@ public:
return false;
}
+ ReadConcernSupportResult supportsReadConcern(const BSONObj& cmdObj,
+ repl::ReadConcernLevel level) const final {
+
+ static const Status kReadConcernNotSupported{ErrorCodes::InvalidOptions,
+ "read concern not supported"};
+ static const Status kDefaultReadConcernNotPermitted{ErrorCodes::InvalidOptions,
+ "default read concern not permitted"};
+ // The dbHash command only supports local and snapshot read concern. Additionally, snapshot
+ // read concern is only supported if test commands are enabled.
+ return {{level != repl::ReadConcernLevel::kLocalReadConcern &&
+ (!getTestCommandsEnabled() ||
+ level != repl::ReadConcernLevel::kSnapshotReadConcern),
+ kReadConcernNotSupported},
+ kDefaultReadConcernNotPermitted};
+ }
+
virtual void addRequiredPrivileges(const std::string& dbname,
const BSONObj& cmdObj,
std::vector<Privilege>* out) const {