[SERVER-32621] Use repl::CollectionCloner to copy big unsharded collections Created: 09/Jan/18  Updated: 27/Oct/23  Resolved: 02/Nov/22

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

Type: Task Priority: Major - P3
Reporter: Randolph Tan Assignee: [DO NOT USE] Backlog - Sharding Team
Resolution: Gone away Votes: 0
Labels: MaxH, pm-1051-legacy-tickets
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Related
related to SERVER-32620 Allow moveChunk on unsharded collections Closed
Assigned Teams:
Sharding
Participants:

 Description   

Instead of storing recordIds and fetching the documents later, the migration process can instead use the repl::CollectionCloner to copy the contents of the collection when moving a big chunk with ignoreJumbo = true.

Steps:

  1. Enter critical section. This will block new writes from being applied to the collection.
  2. Skip MigrationChunkClonerSourceLegacy::startClone() on the donor shard.
  3. Send _recvChunkStart to recipient shard with useCloner: true.
  4. Recipient shard use repl::CollectionCloner to copy the collection
  5. Donor shard sends _configsvrCommitChunkMigration
  6. Donor cleans up chunk with RangeDeleter.


 Comments   
Comment by Max Hirschhorn [ 02/Nov/22 ]

This ticket was originally part of PM-1051 but is no longer necessary.

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