[SERVER-19615] FSM ThreadManager.checkFailed doesn't join threads if failure threshold is exceeded Created: 27/Jul/15  Updated: 19/Sep/15  Resolved: 30/Jul/15

Status: Closed
Project: Core Server
Component/s: JavaScript
Affects Version/s: 3.1.7
Fix Version/s: 3.1.7

Type: Bug Priority: Major - P3
Reporter: Mira Carey Assignee: Mira Carey
Resolution: Done Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Related
Backwards Compatibility: Fully Compatible
Operating System: ALL
Sprint: Platform 7 08/10/15
Participants:
Linked BF Score: 0

 Description   

The fsm_libs thread manager throws an exception in checkFailed. It does this without calling joinAll(), which leads to destructors being called on live threads as the stack unwinds.



 Comments   
Comment by Githook User [ 29/Jul/15 ]

Author:

{u'username': u'hanumantmk', u'name': u'Jason Carey', u'email': u'jcarey@argv.me'}

Message: SERVER-19615 FSM ThreadManager.checkFailed race

The fsm libs ThreadManager's checkFailed method throws if the failure
threshold is exceeded. Callers expect to let that exception escape,
which leads to destructors being called on live threads. Call joinAll()
in a finally block to prevent that.
Branch: master
https://github.com/mongodb/mongo/commit/66119cae01218f6ac10c87333986bcb0ab9726e4

Generated at Thu Feb 08 03:51:33 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.