[SERVER-50365] Stuck with long-running transactions that can't be timed out Created: 18/Aug/20  Updated: 29/Oct/23  Resolved: 02/Sep/20

Status: Closed
Project: Core Server
Component/s: None
Affects Version/s: None
Fix Version/s: 4.7.0, 4.4.2, 4.2.11, 4.0.22

Type: Bug Priority: Major - P3
Reporter: Bruce Lucas (Inactive) Assignee: Gregory Noma
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Backports
Depends
depends on WT-6602 Allow operation timeout ms to be pass... Closed
Duplicate
duplicates SERVER-51512 cache evict problem Closed
is duplicated by SERVER-50348 Take advantage of WT transaction roll... Closed
Related
is related to SERVER-51281 mongod live locked Closed
is related to WT-6507 Exit cache eviction worker after our ... Closed
Backwards Compatibility: Fully Compatible
Operating System: ALL
Backport Requested:
v4.4, v4.2, v4.0
Sprint: Execution Team 2020-09-07
Participants:
Case:

 Description   

When there are long-running transactions the server can get stuck with the cache full of dirty data because the thread that is responsible for aborting timed-out transactions may become stuck trying to evict data that is pinned in cache by the long-running transactions that it's tasked with aborting.



 Comments   
Comment by Githook User [ 13/Dec/20 ]

Author:

{'name': 'Gregory Noma', 'email': 'gregory.noma@gmail.com', 'username': 'gregorynoma'}

Message: SERVER-50365 Use short WT transaction rollback timeout in the multi-document transaction expirer thread
Branch: v4.0
https://github.com/mongodb/mongo/commit/6637619fd08517e1dc2e85a0b9ee4cc6e0b04ed9

Comment by Brian Lane [ 02/Dec/20 ]

gregory.noma FYI - the WT issues have now been backported and vendored into the 4.0 branch.

Comment by Githook User [ 26/Oct/20 ]

Author:

{'name': 'Gregory Noma', 'email': 'gregory.noma@gmail.com', 'username': 'gregorynoma'}

Message: SERVER-50365 Use short WT transaction rollback timeout in the multi-document transaction expirer thread

(cherry picked from commit 6b3e341703b781bb1ff7b1263406a0f1d28dd77c)
Branch: v4.2
https://github.com/mongodb/mongo/commit/f8d708a2148100b8013f2de71408879705e8a37c

Comment by Githook User [ 09/Sep/20 ]

Author:

{'name': 'Gregory Noma', 'email': 'gregory.noma@gmail.com', 'username': 'gregorynoma'}

Message: SERVER-50365 Use short WT transaction rollback timeout in the multi-document transaction expirer thread

(cherry picked from commit 6b3e341703b781bb1ff7b1263406a0f1d28dd77c)
Branch: v4.4
https://github.com/mongodb/mongo/commit/824d2e3a9b4191d614b6be32d4957429f33bc50b

Comment by Githook User [ 02/Sep/20 ]

Author:

{'name': 'Gregory Noma', 'email': 'gregory.noma@gmail.com', 'username': 'gregorynoma'}

Message: SERVER-50365 Use short WT transaction rollback timeout in the multi-document transaction expirer thread
Branch: master
https://github.com/mongodb/mongo/commit/6b3e341703b781bb1ff7b1263406a0f1d28dd77c

Comment by Eric Milkie [ 19/Aug/20 ]

Proposal to help this is we can use a short timeout in the multi-document transaction expirer thread, so that it does not get stuck participating in fruitless eviction during times of extreme cache pressure.

Generated at Thu Feb 08 05:22:28 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.