-
Type: Task
-
Resolution: Unresolved
-
Priority: Major - P3
-
None
-
Affects Version/s: None
-
Component/s: Sharding
-
Labels:None
-
Catalog and Routing
It is possible for shards to enforce different constraints for inserts and updates due to having different index definitions. Our data migration protocols do not allow inserting documents into a shard which would violate these constraints. (And corrupting an index on another shard to allow removing a shard to succeed is not a tradeoff we're willing to make.) This means removing a shard may leave that shard in the draining state for an indefinite amount of time until a client manually intervenes. Eagerly failing the removeShard command may be preferable to avoid the system from becoming stuck in this state.