-
Type:
Task
-
Resolution: Unresolved
-
Priority:
Major - P3
-
None
-
Affects Version/s: None
-
Component/s: Test Model
-
None
-
Storage Engines - Persistence
-
195.962
-
StorEng - Defined Pipeline
-
None
Larger Context
WT-18868 introduces switch_role with a strict synchronous transition contract. This ticket verifies which parts of that contract can be relaxed.
Motivation
The workload model should enforce only the requirements needed for correct and deterministic role transitions.
Scope
Create a requirement matrix for transitions from each role. Use focused workloads to evaluate the following areas independently:
- Read transactions and cursor state across a transition.
- Leader-to-follower transition without a new checkpoint, and delayed checkpoint after a follower-to-leader transition.
- Minimum stable-timestamp preparation in each direction.
Keep active write transactions prohibited where WiredTiger requires write quiescence. Update validation only for behaviour proven safe by the focused workloads.
Acceptance Criteria
- The requirement matrix identifies required, optional, and unsupported behaviour.
- Each accepted relaxation has a fixed model workload with matching WiredTiger behaviour.
- Unsupported behaviour remains rejected, and strict switch_role workloads continue to pass.
Outcome
Test/model uses the minimum verified requirements for synchronous switch_role.
- depends on
-
WT-18868 Test Model Switch Mode (2/5): Synchronous switch_role
-
- Open
-
- is depended on by
-
WT-18870 Test Model Switch Mode (4/5): Randomised switch_role generation
-
- Open
-
- is related to
-
WT-17938 Test Model Switch Mode (5/5): Design asynchronous switch_role
-
- Open
-
-
WT-18867 Test Model Switch Mode (1/5): Follower-mode foundation
-
- Open
-
- related to
-
WT-17938 Test Model Switch Mode (5/5): Design asynchronous switch_role
-
- Open
-
-
WT-18867 Test Model Switch Mode (1/5): Follower-mode foundation
-
- Open
-