summaryrefslogtreecommitdiff
path: root/src/mongo/db/transaction_participant.cpp
diff options
context:
space:
mode:
authorKaloian Manassiev <kaloian.manassiev@mongodb.com>2019-05-10 11:30:21 -0400
committerKaloian Manassiev <kaloian.manassiev@mongodb.com>2019-05-14 07:34:39 -0400
commit3cbd136094249209a212aab06696c2ef0db41b26 (patch)
treee6ec3b0ec58af74c9d7b6e13ebd4920999103554 /src/mongo/db/transaction_participant.cpp
parent4686f07b4b51cb34156275c44fc1138b950f56dc (diff)
downloadmongo-3cbd136094249209a212aab06696c2ef0db41b26.tar.gz
SERVER-37235 Use an onCommit/Abort handler to complete session kill on direct writes to `config.transactions`
Diffstat (limited to 'src/mongo/db/transaction_participant.cpp')
-rw-r--r--src/mongo/db/transaction_participant.cpp8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/mongo/db/transaction_participant.cpp b/src/mongo/db/transaction_participant.cpp
index 0593fee0897..2301b02d541 100644
--- a/src/mongo/db/transaction_participant.cpp
+++ b/src/mongo/db/transaction_participant.cpp
@@ -58,8 +58,6 @@
#include "mongo/db/retryable_writes_stats.h"
#include "mongo/db/server_recovery.h"
#include "mongo/db/server_transactions_metrics.h"
-#include "mongo/db/session.h"
-#include "mongo/db/session_catalog.h"
#include "mongo/db/stats/fill_locker_info.h"
#include "mongo/db/transaction_history_iterator.h"
#include "mongo/db/transaction_participant_gen.h"
@@ -291,6 +289,9 @@ MONGO_FAIL_POINT_DEFINE(onPrimaryTransactionalWrite);
const BSONObj TransactionParticipant::kDeadEndSentinel(BSON("$incompleteOplogHistory" << 1));
+TransactionParticipant::TransactionParticipant() = default;
+
+TransactionParticipant::~TransactionParticipant() = default;
TransactionParticipant::Observer::Observer(const ObservableSession& osession)
: Observer(&getTransactionParticipant(osession.get())) {}
@@ -307,8 +308,7 @@ TransactionParticipant::Participant::Participant(const SessionToKill& session)
: Observer(&getTransactionParticipant(session.get())) {}
void TransactionParticipant::performNoopWrite(OperationContext* opCtx, StringData msg) {
- repl::ReplicationCoordinator* replCoord =
- repl::ReplicationCoordinator::get(opCtx->getClient()->getServiceContext());
+ const auto replCoord = repl::ReplicationCoordinator::get(opCtx);
// The locker must not have a max lock timeout when this noop write is performed, since if it
// threw LockTimeout, this would be treated as a TransientTransactionError, which would indicate