[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:
Backports
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: SERVER-54030 Validate state transitions in TenantMigrationAccessBlocker

(cherry picked from commit 4c4b33ea47c92de59f7cb1d15f0aabd5e5512845)
Branch: v4.9
https://github.com/mongodb/mongo/commit/78ea6746c775828ee796998a6480397a39677b75

Comment by Githook User [ 26/Apr/21 ]

Author:

{'name': 'Cheahuychou Mao', 'email': 'mao.cheahuychou@gmail.com', 'username': 'cheahuychou'}

Message: SERVER-54030 Validate state transitions in TenantMigrationAccessBlocker
Branch: master
https://github.com/mongodb/mongo/commit/4c4b33ea47c92de59f7cb1d15f0aabd5e5512845

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.

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