[SERVER-31862] ServiceStateMachine cleanup may cause invariant during the Process state Created: 07/Nov/17  Updated: 30/Oct/23  Resolved: 08/Nov/17

Status: Closed
Project: Core Server
Component/s: None
Affects Version/s: None
Fix Version/s: 3.6.0-rc4

Type: Bug Priority: Major - P3
Reporter: Jonathan Reams Assignee: Jonathan Reams
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Depends
Backwards Compatibility: Fully Compatible
Operating System: ALL
Sprint: Platforms 2017-11-13
Participants:
Linked BF Score: 0

 Description   

The ThreadGuard of the ServiceStateMachine was recently changed so that it'd be released before entering the TransportLayer of ServiceExecutor. However, it's possible for sinkMessage to fail and switch the SSM's state to endSession before processMessage() has returned and then the SSM will be cleaned up twice.



 Comments   
Comment by Githook User [ 08/Nov/17 ]

Author:

{'name': 'Jonathan Reams', 'username': 'jbreams', 'email': 'jbreams@mongodb.com'}

Message: SERVER-31862 Don't end session outside of switch statement
Branch: master
https://github.com/mongodb/mongo/commit/1132f8d547eee0c8e59e51df923f61ba4d67ef71

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