[SERVER-7024] One balance round can move multiple chunks, even if the balancer is disabled midway through Created: 12/Sep/12  Updated: 08/Mar/14  Resolved: 07/Mar/14

Status: Closed
Project: Core Server
Component/s: Sharding
Affects Version/s: 2.0.7, 2.2.0
Fix Version/s: None

Type: Bug Priority: Major - P3
Reporter: Spencer Brody (Inactive) Assignee: Unassigned
Resolution: Duplicate Votes: 0
Labels: neweng
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
duplicates SERVER-5004 balancer should check for stopped bet... Closed
Related
Operating System: ALL
Participants:

 Description   

When a balance round starts, we find every collection that needs balancing and choose one chunk for each collection to move. The balancer then moves all those chunks (one at a time) as a part of the same balance round.

Before every balance round we check to make sure the balancer is disabled and don't kick off a migration if it is. Within one balance round, however, we don't ever check if the balancer has been disabled, and since one balance round can include moving multiple chunks, so long as those chunks are from different collections, that means that even if the balancer gets disabled, new chunk moves can continue to be initiated if the current balance round is still in progress.

We should add a check between each migration in the balance round to see if the balancer has been disabled since the balancing round began.


Generated at Thu Feb 08 03:13:25 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.