summaryrefslogtreecommitdiff
path: root/src/mongo/db/commands
diff options
context:
space:
mode:
authorRandolph Tan <randolph@10gen.com>2017-07-27 10:32:09 -0400
committerRandolph Tan <randolph@10gen.com>2017-08-17 16:58:40 -0400
commit1e11cda15ddae9972f9993a7d6b6cbf9d172bcb3 (patch)
tree07546cb1464f52398f92db85e8af063d9f3112e0 /src/mongo/db/commands
parentd7325950d72c6aacd25ecbd65888c050fe63482c (diff)
downloadmongo-1e11cda15ddae9972f9993a7d6b6cbf9d172bcb3.tar.gz
SERVER-30407 Store pre/post-image documents when running findAndModify with txnNumber
Diffstat (limited to 'src/mongo/db/commands')
-rw-r--r--src/mongo/db/commands/find_and_modify.cpp8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/mongo/db/commands/find_and_modify.cpp b/src/mongo/db/commands/find_and_modify.cpp
index c11466cff22..168aa12b295 100644
--- a/src/mongo/db/commands/find_and_modify.cpp
+++ b/src/mongo/db/commands/find_and_modify.cpp
@@ -372,6 +372,10 @@ public:
const bool isExplain = false;
makeDeleteRequest(args, isExplain, &request);
+ if (opCtx->getTxnNumber()) {
+ request.setStmtId(0);
+ }
+
ParsedDelete parsedDelete(opCtx, &request);
Status parsedDeleteStatus = parsedDelete.parseRequest();
if (!parsedDeleteStatus.isOK()) {
@@ -453,6 +457,10 @@ public:
const bool isExplain = false;
makeUpdateRequest(args, isExplain, &updateLifecycle, &request);
+ if (opCtx->getTxnNumber()) {
+ request.setStmtId(0);
+ }
+
ParsedUpdate parsedUpdate(opCtx, &request);
Status parsedUpdateStatus = parsedUpdate.parseRequest();
if (!parsedUpdateStatus.isOK()) {