[SERVER-37244] Implement checkOutSessionForKill API and switch all non-migration callers to use it Created: 21/Sep/18  Updated: 29/Oct/23  Resolved: 05/Nov/18

Status: Closed
Project: Core Server
Component/s: Internal Code, Sharding
Affects Version/s: None
Fix Version/s: 4.1.5

Type: Task Priority: Major - P3
Reporter: Kaloian Manassiev Assignee: Kaloian Manassiev
Resolution: Fixed Votes: 0
Labels: ShardedTxn:SessionRefactor
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Depends
depends on SERVER-36799 Move transaction related functionalit... Closed
depends on SERVER-37711 Revert the `ReplicationStateTransitio... Closed
depends on SERVER-37794 Introduce ability to specify interrup... Closed
depends on SERVER-37689 Make recovery from query yield interr... Closed
Duplicate
is duplicated by SERVER-37160 Coverity analysis defect 105017: Dere... Closed
is duplicated by SERVER-37901 Two subsequent invalidations due to w... Closed
is duplicated by SERVER-35909 Create SessionLocker that checks for ... Closed
Related
is related to SERVER-37900 Add ErrorCodes.Interrupted to error c... Closed
Backwards Compatibility: Fully Compatible
Sprint: Sharding 2018-10-08, Sharding 2018-10-22, Sharding 2018-11-05, Sharding 2018-11-19
Participants:
Linked BF Score: 46

 Description   

According to the new session catalog concurrency control design, all session users will be required to check-out the session in order to use anything on it. This ticket is about implementing this functionality as agreed in the associated design.



 Comments   
Comment by Kaloian Manassiev [ 05/Nov/18 ]

Because the work under this ticket is becoming too large, I am splitting the chunk migration work into SERVER-37923 and closing it.

Comment by Githook User [ 05/Nov/18 ]

Author:

{'name': 'Kaloian Manassiev', 'email': 'kaloian.manassiev@mongodb.com', 'username': 'kaloianm'}

Message: SERVER-37244 Use thread-pool instead of detached std::thread in MongoDSessionCatalog
Branch: master
https://github.com/mongodb/mongo/commit/fd8ad1c893f6341856c6353e88e45c4101a5091c

Comment by Githook User [ 02/Nov/18 ]

Author:

{'name': 'Kaloian Manassiev', 'email': 'kaloian.manassiev@mongodb.com', 'username': 'kaloianm'}

Message: SERVER-37244 Expect interruption due to transaction abort in snapshot_read_utils.js
Branch: master
https://github.com/mongodb/mongo/commit/2f4769e6bb9ec06f283309895eba8cf215a2c815

Comment by Githook User [ 02/Nov/18 ]

Author:

{'name': 'Kaloian Manassiev', 'email': 'kaloian.manassiev@mongodb.com', 'username': 'kaloianm'}

Message: SERVER-37244 Fix race condition due to thread execution timing in session_catalog_test
Branch: master
https://github.com/mongodb/mongo/commit/07b22e23018deef35d97045d97c354a65dd4d61f

Comment by Githook User [ 31/Oct/18 ]

Author:

{'name': 'Kaloian Manassiev', 'email': 'kaloian.manassiev@mongodb.com', 'username': 'kaloianm'}

Message: SERVER-37244 Make sessions killable outside of the Session/TransactionParticipant object
Branch: master
https://github.com/mongodb/mongo/commit/236c6c28a18210586673097ee436c5b613b6c46f

Comment by Githook User [ 30/Oct/18 ]

Author:

{'name': 'Kaloian Manassiev', 'email': 'kaloian.manassiev@mongodb.com', 'username': 'kaloianm'}

Message: SERVER-37244 Pull the Session state management from SessionRuntimeInfo into Session

The session's check-out state is currently duplicated between
SessionCatalog's internal container structure and the Session class.
This change moves it all to be under Session.
Branch: master
https://github.com/mongodb/mongo/commit/8dca4a066df2418c90c517fee3e656813697b5fa

Comment by Githook User [ 12/Oct/18 ]

Author:

{'name': 'Kaloian Manassiev', 'email': 'kaloian.manassiev@mongodb.com', 'username': 'kaloianm'}

Message: SERVER-37244 Move MongoD-specific code out of SessionCatalog
Branch: master
https://github.com/mongodb/mongo/commit/6ac6f0efe6e2b6452f2238beb765396f983c53cb

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