[SERVER-55407] Tenant migration initial sync tests should prevent TenantMigrationAccessBlocker from transitioning to the next state while the check is being done Created: 22/Mar/21 Updated: 29/Oct/23 Resolved: 24/Mar/21 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | Sharding |
| Affects Version/s: | None |
| Fix Version/s: | 4.9.0-rc1, 5.0.0-rc0 |
| Type: | Bug | Priority: | Major - P3 |
| Reporter: | Cheahuychou Mao | Assignee: | Cheahuychou Mao |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | pm-1791_non-cloud-blocking | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||||||
| Backwards Compatibility: | Fully Compatible | ||||||||
| Operating System: | ALL | ||||||||
| Backport Requested: |
v4.9
|
||||||||
| Sprint: | Sharding 2021-04-05 | ||||||||
| Participants: | |||||||||
| Linked BF Score: | 77 | ||||||||
| Description |
|
If the migration hasn't committed when the state doc is read here, the TenantMigrationAccessBlocker check can fail (i.e. time out due to assert.soon) since the migration could continue past the state the check expects. To workaround this, we can either pause the migration or disable replication on the initial sync node so that the TenantMigrationAccessBlocker cannot transition to the next state while the check is being done. Note that we had to do something similar in the startup recovery tests (we used failpoint PrimaryOnlyServiceSkipRebuildingInstances to make the migration not resume after restart). |
| Comments |
| Comment by Githook User [ 31/Mar/21 ] |
|
Author: {'name': 'Cheahuychou Mao', 'email': 'mao.cheahuychou@gmail.com', 'username': 'cheahuychou'}Message: (cherry picked from commit 0634ca5d6ed6e54c455605ecb04263deb5ea9cf5) |
| Comment by Githook User [ 24/Mar/21 ] |
|
Author: {'name': 'Cheahuychou Mao', 'email': 'mao.cheahuychou@gmail.com', 'username': 'cheahuychou'}Message: |