-
Type: Task
-
Resolution: Fixed
-
Priority: Major - P3
-
Affects Version/s: None
-
Component/s: Replication
-
Fully Compatible
-
Sharding 2020-08-24, Sharding 2020-09-21
donorForgetMigration just needs to ensure the migration-related state on the donor and recipient get cleaned up (Cloud will delete the data from the donor or recipient as needed).
Once the donor's logic is in a future chain, TenantMigrationDonor can have a "_receivedDonorForgetMigration" promise that it waits on once it finishes coordinating the migration.
The donorForgetMigration command can set this promise by, e.g., looking up the TenantMigrationDonor if one exists and calling TenantMigrationDonor::receivedDonorForgetMigration, which emplaces the promise.
The donor can then proceed with the rest of the chain, which should just be one step to update its state machine doc to mark it as garbage collectable by the TTL index.
- depends on
-
SERVER-50191 Create TTL index on config.tenantMigrationDonors to garbage collect tenant migration donors' durable state
- Closed
- is depended on by
-
SERVER-50528 Test a tenant migration end to end without failover
- Closed
- related to
-
SERVER-50807 [passthrough suite] Make ContinuousTenantMigration run donorForgetMigration at the end of each test
- Closed