[SERVER-48862] Donor should not be able to start/commit a index build for a tenant at a timestamp >= recipientSyncData cmd's startMigrationDonorTimestamp Created: 15/Jun/20  Updated: 29/Oct/23  Resolved: 05/Feb/21

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

Type: Task Priority: Major - P3
Reporter: Matthew Russotto Assignee: Matthew Russotto
Resolution: Fixed Votes: 0
Labels: pm-1791_alpha, pm-1791_milestone-B
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Depends
depends on SERVER-48860 Create migration oplog applier class Closed
is depended on by SERVER-50495 [passthrough suite] Make tenant_migra... Closed
is depended on by SERVER-50805 Test multi-key updates during a tenan... Closed
Related
related to SERVER-53552 Tenant migration donor should pass st... Closed
related to SERVER-53553 Make tenant migration recipient to st... Closed
related to SERVER-53685 Need to handle case of indexes being ... Closed
related to SERVER-54347 Allow createIndexes and dropIndexes d... Closed
Backwards Compatibility: Fully Compatible
Sprint: Repl 2020-09-07, Repl 2020-10-05, Repl 2020-11-16, Repl 2020-11-30, Repl 2021-01-11, Repl 2021-01-25, Repl 2021-02-08
Participants:

 Description   

1) TenantMigrationDonor::Instance should abort active index builds  for the tenant with abort error code as "ErrorCodes::TenantMigrationInProgress" and wait for those index builds to complete after TenantMigrationDonor::Instance has transitioned to data sync phase and before sending the recipientSyncData cmd to recipient.

2) Donor trying to start any new index builds for a tenant after the TenantMigrationDonor::Instance has transitioned to data sync phase, should throw an error "ErrorCodes::TenantMigrationInProgress".

3) Parent thread ("createIndexes") user thread on receiving the error "ErrorCodes::TenantMigrationInProgress" should wait for the tenant migration to complete and the tenant migration decision (abort/commit) to be majority replicated on the donor replica set.



 Comments   
Comment by Githook User [ 05/Feb/21 ]

Author:

{'name': 'Matthew Russotto', 'email': 'matthew.russotto@mongodb.com', 'username': 'mtrussotto'}

Message: SERVER-48862 Part 2: aborting index builds when a migration starts
Branch: master
https://github.com/mongodb/mongo/commit/485d115ac7d0c7cb50e792d7aeeff41fbe621c89

Comment by Githook User [ 27/Jan/21 ]

Author:

{'name': 'Matthew Russotto', 'email': 'matthew.russotto@mongodb.com', 'username': 'mtrussotto'}

Message: SERVER-48862 Donor should not be able to start/commit a index build for a tenant at a timestamp >= recipientSyncData cmd's startMigrationDonorTimestamp
Branch: master
https://github.com/mongodb/mongo/commit/c65e6736ec25d5f2c6296014c6a16666a886f336

Comment by Suganthi Mani [ 04/Jan/21 ]

Note: Repurposing this ticket to address step no: #1 thru 3 of option 3:  Donor blocks index builds for the tenant while migration is active

Generated at Thu Feb 08 05:18:15 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.