[SERVER-49526] configsvrReshardCollection should calculate new initial split points Created: 15/Jul/20 Updated: 29/Oct/23 Resolved: 23/Mar/21 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | Sharding |
| Affects Version/s: | None |
| Fix Version/s: | 5.0.0-rc0 |
| Type: | Task | Priority: | Major - P3 |
| Reporter: | Janna Golden | Assignee: | Randolph Tan |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | PM-234-M3, PM-234-T-new-split | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||||||||||||||||||||||||||||||
| Backwards Compatibility: | Fully Compatible | ||||||||||||||||||||||||||||||||
| Sprint: | Sharding 2020-08-10, Sharding 2020-08-24, Sharding 2020-11-16, Sharding 2020-11-30, Sharding 2020-12-14, Sharding 2020-12-28, Sharding 2021-01-11, Sharding 2021-01-25, Sharding 2021-02-22, Sharding 2021-03-08, Sharding 2021-03-22, Sharding 2021-04-05 | ||||||||||||||||||||||||||||||||
| Participants: | |||||||||||||||||||||||||||||||||
| Story Points: | 2 | ||||||||||||||||||||||||||||||||
| Description |
|
The config server needs to create new initial split points using the ReshardingSplitPolicy. There are two options: 1. configsvrReshardCollection does this and passes the generated chunks to the resharding coordinator using setInitialChunksAndZones. If we go this route we must avoid generating new initial chunks if we're retrying configsvrReshardCollection and a ReshardingCoordinatorService already exists on disk. |
| Comments |
| Comment by Githook User [ 23/Mar/21 ] | |||||||||||||||||||||||||||
|
Author: {'name': 'Randolph Tan', 'email': 'randolph@10gen.com', 'username': 'renctan'}Message: | |||||||||||||||||||||||||||
| Comment by Max Hirschhorn [ 17/Nov/20 ] | |||||||||||||||||||||||||||
|
Note that there's a bug in the current implementation of the _configsvrReshardCollection command. The _configsvrReshardCollection command uses the chunks from the existing sharded collection as the definition for the chunks for the temporary resharding collection. This means omitting _presetReshardedChunks in reshardCollection causes the chunks to use the old shard key pattern.
|