[SERVER-33530] Investigate if a gap in cursor ownership allows cursor leaks during error paths Created: 27/Feb/18  Updated: 06/Dec/22

Status: Backlog
Project: Core Server
Component/s: Aggregation Framework
Affects Version/s: None
Fix Version/s: None

Type: Task Priority: Major - P3
Reporter: Charlie Swanson Assignee: Backlog - Query Execution
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Assigned Teams:
Query Execution
Backwards Compatibility: Fully Compatible
Participants:

 Description   

During development on SERVER-24978 we realized there's a time between establishing cursors on mongod and establishing the merging half of the pipeline on a merging shard where the cursors aren't logically owned by anyone. We suspect that an error encountered at this specific moment would cause the cursors to be abandoned on the shards, eventually cleaned up by the cursor timeout thread, but effectively leaked.

We should investigate whether or not this is actually the case, and see if we can fix it if so.



 Comments   
Comment by Charlie Swanson [ 28/Feb/18 ]

bruce.lucas It's unclear if this is a real bug at this point, but if so it would likely affect 3.6 as well. Hard to say for certain without more investigation though.

We believe the problem specifically has to do with aggregations which are merged on one of the shards.

Comment by Bruce Lucas (Inactive) [ 28/Feb/18 ]

charlie.swanson, can you clarify whether this issue affects 3.6, or is it a regression in master?

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