[SERVER-69777] Lock by dbName + UUID rather than namespace in cleanUpRange Created: 16/Sep/22  Updated: 29/Oct/23  Resolved: 19/Sep/22

Status: Closed
Project: Core Server
Component/s: None
Affects Version/s: None
Fix Version/s: 6.2.0-rc0

Type: Bug Priority: Major - P3
Reporter: Silvia Surroca Assignee: Pierlauro Sciarelli
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Depends
Problem/Incident
is caused by SERVER-69555 Range deletions must always be referr... Closed
Backwards Compatibility: Fully Compatible
Operating System: ALL
Sprint: Sharding EMEA 2022-09-19
Participants:
Linked BF Score: 40

 Description   

Locking by namespace in cleanUpRange may lead to orphan leaks.

The next flow will result on an orphan leak:

1. A rename was ongoing from collA ---> collB, which copies range deletion docs from collA to collB and keeps the collA ones
2. Step-down happened
3. Step-up happened, so range deletions were resumed
4. The resubmit wrongly happens by namespace rather than collection UUID
5. As namespace collA is not found, that range deletion docs are deleted filtering by UUID+range, so range deletion docs from collB won't be processed.



 Comments   
Comment by Githook User [ 16/Sep/22 ]

Author:

{'name': 'Pierlauro Sciarelli', 'email': 'pierlauro.sciarelli@mongodb.com', 'username': 'pierlauro'}

Message: SERVER-69777 Lock by dbName + UUID rather than namespace in `cleanUpRange`
Branch: master
https://github.com/mongodb/mongo/commit/7a8056a5319ea346ec4b91d598ed03d6cdf0947c

Generated at Thu Feb 08 06:14:22 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.