-
Type:
Bug
-
Resolution: Done
-
Priority:
Major - P3
-
None
-
Affects Version/s: None
-
Component/s: None
-
None
-
Replication
-
ALL
-
Repl 2026-03-02, Repl 2026-03-16
-
None
-
None
-
None
-
None
-
None
-
None
-
None
If oplog application of a multi document transaction is slow enough, then the PeriodicThreadToAbortExpiredTransactions which is running in the background may kill a transaction that expires.
I haven't reproduced this but it seems possible because secondary oplog application calls TransactionParticipant::Participant::beginOrContinueTransactionUnconditionally() which calls _beginMultiDocumentTransaction() (this happens when MongoDOperationContextSessionWithoutRefresh is constructed here, which calls beginOrContinueTransactionUnconditionally()) so it seems like during oplog application an ordinary multi doc transaction is getting created.