[SERVER-24721] Make BalancerPolicy::balance return more than one migration per collection (if appropriate) Created: 22/Jun/16  Updated: 19/Jul/16  Resolved: 14/Jul/16

Status: Closed
Project: Core Server
Component/s: Sharding
Affects Version/s: None
Fix Version/s: 3.3.10

Type: Task Priority: Major - P3
Reporter: Kaloian Manassiev Assignee: Kaloian Manassiev
Resolution: Done Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Backwards Compatibility: Fully Compatible
Sprint: Sharding 17 (07/15/16)
Participants:

 Description   

Currently, the BalancerPolicy::balance call, which is used by the sharding balancer returns a single migration per collection. In order to better utilize the ability to move multiple chunks in parallel across the cluster, this call should be made to return more than one migration per collection if this is appropriate.

For example:

Starting state of S1 (50 chunks), S2 (50 chunks), S3 (0 chunks), S4 (0 chunks) should result in two migrations:
S1 -> S3 and S2 -> S4

Care should be taken that the balancer does not move chunks over-zealously and cause unnecessary churn in the cluster.



 Comments   
Comment by Githook User [ 17/Jul/16 ]

Author:

{u'username': u'kaloianm', u'name': u'Kaloian Manassiev', u'email': u'kaloian.manassiev@mongodb.com'}

Message: SERVER-24721 Use explicit std::set contructor
Branch: master
https://github.com/mongodb/mongo/commit/c4f55991f8be792f95d58ece57fca61e6890befd

Comment by Githook User [ 14/Jul/16 ]

Author:

{u'username': u'kaloianm', u'name': u'Kaloian Manassiev', u'email': u'kaloian.manassiev@mongodb.com'}

Message: SERVER-24721 BalancerPolicy should return more than one migration per collection

This change makes the BalancerPolicy return multiple migrations per
collection, if applicable and if they are for different shards.

These migrations are still executed serially.
Branch: master
https://github.com/mongodb/mongo/commit/600997a753d1c5b2d2678f615fc1338ab18fc685

Comment by Githook User [ 14/Jul/16 ]

Author:

{u'username': u'kaloianm', u'name': u'Kaloian Manassiev', u'email': u'kaloian.manassiev@mongodb.com'}

Message: SERVER-24721 Move ShardStatistics vector out of DistributionStatus

The collection DistributionStatus class shouldn't contain information
about the shards since it is not using it. Also cleans up the
DistributionStatus class so it is more of a cache of the cluster runtime
state.
Branch: master
https://github.com/mongodb/mongo/commit/4da91b20ca36982b5b86cfb88081353f6adf56a9

Comment by Githook User [ 12/Jul/16 ]

Author:

{u'username': u'kaloianm', u'name': u'Kaloian Manassiev', u'email': u'kaloian.manassiev@mongodb.com'}

Message: SERVER-24721 Make DistributionStatus include the collection namespace
Branch: master
https://github.com/mongodb/mongo/commit/d6bc531aeeaacfaa2e21ddcd3a3de187e143a3ad

Generated at Thu Feb 08 04:07:14 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.