[SERVER-70656] Balancer should prioritize draining shards Created: 18/Oct/22  Updated: 26/Oct/23

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

Type: Task Priority: Major - P3
Reporter: Allison Easton Assignee: Backlog - Catalog and Routing
Resolution: Unresolved Votes: 0
Labels: oldshardingemea, shardingemea-qw
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Related
Assigned Teams:
Catalog and Routing
Sprint: Sharding EMEA 2022-11-14
Participants:
Story Points: 3

 Description   

The balancer randomly chooses collections to balance each round. Within these collections, we prioritize draining shards, but if the balancer chooses collections that are not present on the draining shard, the balancer will move chunks between other shards rather than drain those that are trying to be removed.

This problem is exacerbated if the user is trying to remove more than half of their shards. A user signaled that the draining of empty chunks was slowed down by the balancer moving chunks between the 2 non-draining shards. This prevented any chunks being drained from the shards being dropped during that round because the only two receiving shards were already involved in a migration.



 Comments   
Comment by Garaudy Etienne [ 27/Jan/23 ]

cc matt.panton@mongodb.com

Generated at Thu Feb 08 06:16:45 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.