[SERVER-37456] Make the global CursorManager a decoration on ServiceContext Created: 03/Oct/18  Updated: 29/Oct/23  Resolved: 11/Feb/19

Status: Closed
Project: Core Server
Component/s: Querying
Affects Version/s: None
Fix Version/s: 4.1.8

Type: Task Priority: Major - P3
Reporter: David Storch Assignee: Anton Korshunov
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Backwards Compatibility: Fully Compatible
Sprint: Query 2019-02-25
Participants:

 Comments   
Comment by Githook User [ 11/Feb/19 ]

Author:

{'name': 'Anton Korshunov', 'email': 'anton.korshunov@mongodb.com', 'username': 'antkorsh'}

Message: SERVER-37456 Make the global CursorManager a decoration on ServiceContext
Branch: master
https://github.com/mongodb/mongo/commit/b54d9905a167867a2655910799573378aff2ce89

Comment by David Storch [ 06/Feb/19 ]

anton.korshunov, you should work off a more recent version of the master branch. I recently deleted the GlobalCursorIdCache in SERVER-37454 (cb1aabbba7). If you'd like, we can have a call in which I provide some context around the "all cursors globally managed" project to which this task is related.

Comment by Anton Korshunov [ 06/Feb/19 ]

On a second thought it seems it makes sense to make the IdCache a member field of the CursorManager as they both have the same life cycle and nobody else uses the IdCache, so we can create it at the construction time of the CursorManager and destroy along with the CursorManager. 

Comment by Anton Korshunov [ 06/Feb/19 ]

david.storch Should we also make the GlobalCursorIdCache a decoration? It works in tandem with the CursorManager and the latter has an initialization dependency on the IdCache, so if we make the CursorManager a decoration but not the IdCache, I'm not sure we can guarantee the correct initialization/destruction sequence in this case.

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