[SERVER-43688] Race in range deleter can trigger invariant if epoch changes Created: 27/Sep/19  Updated: 06/Dec/22  Resolved: 15/Jan/20

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

Type: Bug Priority: Major - P3
Reporter: Matthew Saltz (Inactive) Assignee: [DO NOT USE] Backlog - Sharding Team
Resolution: Won't Fix Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Depends
depends on SERVER-45024 Refactor the CollectionRangeDeleter t... Closed
Assigned Teams:
Sharding
Operating System: ALL
Participants:
Linked BF Score: 12

 Description   

setFilteringMetadata in the metadata manager, when a collection's epoch has changed, triggers clearing the range deleter's queue.

If this happens when the range deleter is executing a task for that collection in between these lines, where the range deleter is not holding the metadata manager's mutex, then the invariant here will be triggered.

We should either make this not an invariant or fix the concurrency control between the range deleter and the metadata manager (though the former seems more tractable).



 Comments   
Comment by Matthew Saltz (Inactive) [ 15/Jan/20 ]

Refactoring the range deleter made this a non-issue (see SERVER-45024)

Comment by Matthew Saltz (Inactive) [ 09/Dec/19 ]

This will go away once the CollectionRangeDeleter is refactored

Generated at Thu Feb 08 05:03:50 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.