summaryrefslogtreecommitdiff
path: root/src/mongo/db/op_observer_impl.cpp
diff options
context:
space:
mode:
authorBlake Oler <blake.oler@mongodb.com>2019-03-05 11:41:04 -0500
committerBlake Oler <blake.oler@mongodb.com>2019-03-08 06:22:20 -0500
commit52f41f0a7aeaac855ce088387d1d82148bfba6e0 (patch)
tree3d0e8e2e809a8b0ef5f41e22186a230ce57a83da /src/mongo/db/op_observer_impl.cpp
parented8fa38679c5f2474cb4e74a88b35710c57089af (diff)
downloadmongo-52f41f0a7aeaac855ce088387d1d82148bfba6e0.tar.gz
SERVER-39926 Observe prepared transactions on prepare for migration to guarantee collection locking
Diffstat (limited to 'src/mongo/db/op_observer_impl.cpp')
-rw-r--r--src/mongo/db/op_observer_impl.cpp6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/mongo/db/op_observer_impl.cpp b/src/mongo/db/op_observer_impl.cpp
index 568d70a504e..a60ce406082 100644
--- a/src/mongo/db/op_observer_impl.cpp
+++ b/src/mongo/db/op_observer_impl.cpp
@@ -1251,7 +1251,7 @@ void OpObserverImpl::onUnpreparedTransactionCommit(
opCtx, statements.size() /* stmtId */, oplogSlots.back().opTime, commitSlot);
}
invariant(!commitOpTime.isNull());
- shardObserveTransactionCommit(opCtx, statements, commitOpTime, false);
+ shardObserveTransactionPrepareOrUnpreparedCommit(opCtx, statements, commitOpTime);
}
void OpObserverImpl::onPreparedTransactionCommit(
@@ -1271,8 +1271,6 @@ void OpObserverImpl::onPreparedTransactionCommit(
cmdObj.setCommitTimestamp(commitTimestamp);
logCommitOrAbortForPreparedTransaction(
opCtx, commitOplogEntryOpTime, cmdObj.toBSON(), DurableTxnStateEnum::kCommitted);
-
- shardObserveTransactionCommit(opCtx, statements, commitOplogEntryOpTime.opTime, true);
}
void OpObserverImpl::onTransactionPrepare(OperationContext* opCtx,
@@ -1316,6 +1314,8 @@ void OpObserverImpl::onTransactionPrepare(OperationContext* opCtx,
logOplogEntriesForTransaction(opCtx, statements, oplogSlots);
}
}
+
+ shardObserveTransactionPrepareOrUnpreparedCommit(opCtx, statements, {});
}
void OpObserverImpl::onTransactionAbort(OperationContext* opCtx,