[SERVER-27455] Allow multiple 'draining' shards Created: 19/Dec/16 Updated: 26/Aug/23 Resolved: 19/Dec/16 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | Sharding |
| Affects Version/s: | 3.2.11, 3.4.0 |
| Fix Version/s: | None |
| Type: | Improvement | Priority: | Major - P3 |
| Reporter: | Kaloian Manassiev | Assignee: | [DO NOT USE] Backlog - Sharding Team |
| Resolution: | Duplicate | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||||||
| Assigned Teams: |
Sharding
|
||||||||
| Participants: | |||||||||
| Description |
|
The removeShard command contains an explicit check that there aren't any other shards that are currently draining and if so, fails the command. This check precludes the scenario of quickly shrinking a cluster, which might have been exponentially grown during peak time. The check is unnecessary, given that we already test that the balancer supports this scenario and should be removed. NOTE: Fixing it in the 3.4 release will take advantage of the support for parallel migrations so multiple shards can drain in parallel. In versions 3.2 and older, the balancer only moves a single chunk at a time so having multiple "draining" shards only prevents chunks from jumping from one "doomed" shard to the next. |
| Comments |
| Comment by Spencer Brody (Inactive) [ 19/Dec/16 ] |
|
Dupe of |