[SERVER-26166] CommitChunkMigration command should commit chunk even if it's been split. Created: 19/Sep/16 Updated: 06/Dec/22 Resolved: 22/Sep/16 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | Sharding |
| Affects Version/s: | None |
| Fix Version/s: | None |
| Type: | Improvement | Priority: | Major - P3 |
| Reporter: | Dianna Hohensee (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 | ||
| Assigned Teams: |
Sharding
|
| Backwards Compatibility: | Fully Compatible |
| Participants: |
| Description |
|
Since a migration can potentially run without a distributed lock if the balancer restarts and abandons its active migration, there's a possibility – though slim – that a split occurs on the chunk that is moving and then the migration tries to commit. If the balancer holds the distlock again, and the collection version epoch still matches, the commit command then looks for the chunk in the config.chunks collection. It currently looks for an exact match, but this could be changed to allow for splitting. |