[SERVER-54030] Validate state transitions in TenantMigrationAccessBlocker Created: 25/Jan/21 Updated: 29/Oct/23 Resolved: 26/Apr/21 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | None |
| Affects Version/s: | None |
| Fix Version/s: | 4.9.0-rc1, 5.0.0-rc0 |
| Type: | Task | Priority: | Major - P3 |
| Reporter: | Jack Mulrow | Assignee: | Cheahuychou Mao |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | pm-1791_non-cloud-blocking, pm-1791_polish | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||
| Backwards Compatibility: | Fully Compatible | ||||
| Backport Requested: |
v4.9
|
||||
| Sprint: | Sharding 2021-05-03 | ||||
| Participants: | |||||
| Description |
|
The TenantMigrationAccessBlocker class transitions between several states over the course of a migration. To make it easier to catch bugs, we should add a class / helper method that formally validates the transitions are legal (possibly like the one used by TransactionParticipant). This can replace the ad-hoc invariants currently used for that purpose. |
| Comments |
| Comment by Githook User [ 26/Apr/21 ] |
|
Author: {'name': 'Cheahuychou Mao', 'email': 'mao.cheahuychou@gmail.com', 'username': 'cheahuychou'}Message: (cherry picked from commit 4c4b33ea47c92de59f7cb1d15f0aabd5e5512845) |
| Comment by Githook User [ 26/Apr/21 ] |
|
Author: {'name': 'Cheahuychou Mao', 'email': 'mao.cheahuychou@gmail.com', 'username': 'cheahuychou'}Message: |
| Comment by Andrew Shuvalov (Inactive) [ 26/Jan/21 ] |
|
New https://jira.mongodb.org/browse/PM-2147 is related to Matt's effort to create the Actor framework, for which I developed the version of C++ FSM generator. I'll watch for scope and discuss the place of this effort. Tenant migration FSM is a good pilot to apply new approach if decide to go with it. |