summaryrefslogtreecommitdiff
path: root/src/mongo/db/session.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/mongo/db/session.h')
-rw-r--r--src/mongo/db/session.h13
1 files changed, 8 insertions, 5 deletions
diff --git a/src/mongo/db/session.h b/src/mongo/db/session.h
index df9bceeae2e..fdf7358efdf 100644
--- a/src/mongo/db/session.h
+++ b/src/mongo/db/session.h
@@ -111,6 +111,8 @@ public:
return _readConcernArgs;
}
+ void setNoEvictionAfterRollback();
+
private:
bool _released = false;
std::unique_ptr<Locker> _locker;
@@ -270,13 +272,13 @@ public:
/**
* Aborts the transaction outside the transaction, releasing transaction resources.
*/
- void abortArbitraryTransaction();
+ void abortArbitraryTransaction(OperationContext* opCtx);
/**
* Same as abortArbitraryTransaction, except only executes if _transactionExpireDate indicates
* that the transaction has expired.
*/
- void abortArbitraryTransactionIfExpired();
+ void abortArbitraryTransactionIfExpired(OperationContext* opCtx);
/*
* Aborts the transaction inside the transaction, releasing transaction resources.
@@ -412,11 +414,12 @@ private:
static CursorExistsFunction _cursorExistsFunction;
void _beginOrContinueTxn(WithLock,
+ OperationContext* opCtx,
TxnNumber txnNumber,
boost::optional<bool> autocommit,
boost::optional<bool> startTransaction);
- void _beginOrContinueTxnOnMigration(WithLock, TxnNumber txnNumber);
+ void _beginOrContinueTxnOnMigration(WithLock, OperationContext* opCtx, TxnNumber txnNumber);
// Checks if there is a conflicting operation on the current Session
void _checkValid(WithLock) const;
@@ -426,7 +429,7 @@ private:
// than the current one.
void _checkTxnValid(WithLock, TxnNumber txnNumber, boost::optional<bool> autocommit) const;
- void _setActiveTxn(WithLock, TxnNumber txnNumber);
+ void _setActiveTxn(WithLock, OperationContext* opCtx, TxnNumber txnNumber);
void _checkIsActiveTransaction(WithLock, TxnNumber txnNumber, bool checkAbort) const;
@@ -457,7 +460,7 @@ private:
// Releases stashed transaction resources to abort the transaction.
- void _abortTransaction(WithLock);
+ void _abortTransaction(WithLock, OperationContext* opCtx);
// Committing a transaction first changes its state to "Committing" and writes to the oplog,
// then it changes the state to "Committed".