diff options
author | Marcos José Grillo Ramírez <marcos.grillo@mongodb.com> | 2020-03-23 17:51:55 +0100 |
---|---|---|
committer | Evergreen Agent <no-reply@evergreen.mongodb.com> | 2020-03-24 14:10:26 +0000 |
commit | ad5a5fd53f50a0290338ea701489f3c18f1fa308 (patch) | |
tree | 60dd42b203772d8941e9bb6a9360e5e23ef6d201 /src/mongo/db/write_concern.cpp | |
parent | e6e75a8bb7c95cca2a5f7ed028d497efbfe51078 (diff) | |
download | mongo-ad5a5fd53f50a0290338ea701489f3c18f1fa308.tar.gz |
SERVER-47043 Read concern set to default when it should be local
Diffstat (limited to 'src/mongo/db/write_concern.cpp')
-rw-r--r-- | src/mongo/db/write_concern.cpp | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/mongo/db/write_concern.cpp b/src/mongo/db/write_concern.cpp index d5749ac7e5c..05570734e5e 100644 --- a/src/mongo/db/write_concern.cpp +++ b/src/mongo/db/write_concern.cpp @@ -81,7 +81,8 @@ bool commandSpecifiesWriteConcern(const BSONObj& cmdObj) { } StatusWith<WriteConcernOptions> extractWriteConcern(OperationContext* opCtx, - const BSONObj& cmdObj) { + const BSONObj& cmdObj, + bool isInternalClient) { // The default write concern if empty is {w:1}. Specifying {w:0} is/was allowed, but is // interpreted identically to {w:1}. auto wcResult = WriteConcernOptions::extractWCFromCommand(cmdObj); @@ -107,7 +108,7 @@ StatusWith<WriteConcernOptions> extractWriteConcern(OperationContext* opCtx, repl::ReplicationCoordinator::get(opCtx)->isReplEnabled() && (!opCtx->inMultiDocumentTransaction() || isTransactionCommand(cmdObj.firstElementFieldName())) && - !opCtx->getClient()->isInDirectClient()) { + !opCtx->getClient()->isInDirectClient() && !isInternalClient) { auto wcDefault = ReadWriteConcernDefaults::get(opCtx->getServiceContext()) .getDefaultWriteConcern(opCtx); |