-
Type: Investigation
-
Resolution: Done
-
Priority: Major - P3
-
Affects Version/s: None
-
Component/s: None
-
None
-
Developer Tools
-
Not Needed
Original Downstream Change Summary
Adds the server parameter AbortExpiredTransactionsSessionCheckoutTimeout which changes the maximum number of milliseconds for a session to checkout when aborting expired transactions.
Also adds the following server status stats:
- abortExpiredTransactions.successfulKills which tracks the number of transactions the "abortExpiredTransactions" thread successfully killed
- abortExpiredTransactions.timedOutKills which tracks the number of transactions unsuccessfully killed by the "abortExpiredTransactions" thread due to timing out trying to checkout a sessions.
Description of Linked Ticket
The "abortExpiredTransactions" thread iterates over a list of expired sessions and tries to abort each one serially However, if, for some reason, one of the expired sessions cannot be checked out right away, the "abortExpiredTransactions" thread is blocked until the session can be checked out.
This can potentially start expired sessions from being reaped.
- depends on
-
SERVER-77172 "abortExpiredTransactions" thread can get stuck if it fails to checkout a session
- Closed