diff options
Diffstat (limited to 'src/mongo/s/commands/strategy.cpp')
-rw-r--r-- | src/mongo/s/commands/strategy.cpp | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/src/mongo/s/commands/strategy.cpp b/src/mongo/s/commands/strategy.cpp index efea41cb54d..1eae00e206f 100644 --- a/src/mongo/s/commands/strategy.cpp +++ b/src/mongo/s/commands/strategy.cpp @@ -203,6 +203,19 @@ void execCommandClient(OperationContext* opCtx, return; } + repl::ReadConcernArgs readConcernArgs; + auto readConcernParseStatus = readConcernArgs.initialize(request.body); + if (!readConcernParseStatus.isOK()) { + CommandHelpers::appendCommandStatus(result, readConcernParseStatus); + return; + } + if (readConcernArgs.getLevel() == repl::ReadConcernLevel::kSnapshotReadConcern) { + CommandHelpers::appendCommandStatus( + result, + Status(ErrorCodes::InvalidOptions, "read concern snapshot is not supported on mongos")); + return; + } + // attach tracking rpc::TrackingMetadata trackingMetadata; trackingMetadata.initWithOperName(c->getName()); |