[SERVER-81294] Switch AutoGetCollectionForReadMaybeLockFree for acquireCollectionsMaybeLockFree in DocumentSourceCursor Created: 21/Sep/23 Updated: 11/Jan/24 Resolved: 11/Oct/23 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | Query Execution |
| Affects Version/s: | None |
| Fix Version/s: | None |
| Type: | Task | Priority: | Major - P3 |
| Reporter: | Kaloian Manassiev | Assignee: | [DO NOT USE] Backlog - Sharding NYC |
| Resolution: | Duplicate | Votes: | 0 |
| Labels: | PM-2144-QW-Fallout | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||
| Assigned Teams: |
Sharding NYC
|
||||
| Sprint: | Sharding EMEA 2023-10-02 | ||||
| Participants: | |||||
| Description |
|
The current multi-collection acquire path offered by AutoGetCollectionForReadLockFree violates a fundamental sharding requirement that all referenced namespaces pre-declare a placement concern (db or shard version). Because of this, they are not safe to use with a concurrent shardCollection or movePrimary. This ticket is to switch the two usages in DocumentSourceCursor to the new acquisitions API. |
| Comments |
| Comment by Kaloian Manassiev [ 11/Oct/23 ] |
|
Implementing this ticket is akin to doing most of PM-3410, which requires some additional design and agreement with the query team, so I am closing it as duplicate. |