[SERVER-24532] Create a MigrationManager on the balancer Created: 13/Jun/16  Updated: 19/Jul/16  Resolved: 13/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: Dianna Hohensee (Inactive) Assignee: Dianna Hohensee (Inactive)
Resolution: Done Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Related
is related to SERVER-22669 CSRS balancer supports parallel migra... Closed
Backwards Compatibility: Fully Compatible
Sprint: Sharding 16 (06/24/16), Sharding 17 (07/15/16)
Participants:
Linked BF Score: 0

 Description   

The balancer will handle starting up, shutting down, periodically checking for balancing work, and finding precise chunks to move around. These chunks will then be handed to the MigrationManager, which will: attempt to schedule the migrations; manage the distlocks; maintain information about the migrations in progress. The MigrationManager will call moveChunks in parallel by using the TaskExecutor to asynchronously schedule them. It will then wait synchronously for the moveChunk commands to return.

MigrationManager

  • schedule the migrations
  • take the distlocks, store them as shared_ptrs in some Migration object
  • hold a set of Migration objects – make up an appropriate name – to maintain information about each active migration.
    • collection NamespaceString
    • distlock shared_ptr
    • ChunkRange
    • toShard
    • fromShard

TODO in a later ticket: use the information in the Migration objects to determine migration conflicts so that conflicts aren't just found when the moveChunk command is rejected.
TODO in a later ticket: find a way to parallelize receiving moveChunk responses, so a slow migration won't hold up releasing the distlocks of faster migrations that were scheduled later.



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

Author:

{u'username': u'DiannaHohensee', u'name': u'Dianna Hohensee', u'email': u'dianna.hohensee@10gen.com'}

Message: SERVER-24532 adding MigrationManager to manage parallel migrations
Branch: master
https://github.com/mongodb/mongo/commit/08f3a57fbb54e72a03e47047a1e8aea0f708f1c7

Comment by Githook User [ 12/Jul/16 ]

Author:

{u'username': u'DiannaHohensee', u'name': u'Dianna Hohensee', u'email': u'dianna.hohensee@10gen.com'}

Message: Revert "SERVER-24532 adding MigrationManager to manage parallel migrations"

This reverts commit 2155b293eaf4264dee1bdf68022b66e636a20a63.
Branch: master
https://github.com/mongodb/mongo/commit/0e9da86226846bd5838af7be9aa60188c180e209

Comment by Githook User [ 11/Jul/16 ]

Author:

{u'username': u'DiannaHohensee', u'name': u'Dianna Hohensee', u'email': u'dianna.hohensee@10gen.com'}

Message: SERVER-24532 adding MigrationManager to manage parallel migrations
Branch: master
https://github.com/mongodb/mongo/commit/2155b293eaf4264dee1bdf68022b66e636a20a63

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