-
Type:
Bug
-
Resolution: Done
-
Priority:
Major - P3
-
Affects Version/s: None
-
Component/s: None
-
None
-
Cluster Scalability
-
Fully Compatible
-
ALL
-
v9.0
-
ClusterScalability 6Jul-20Jul, ClusterScalability 20Jul-3Aug
-
200
-
None
-
None
-
None
-
None
-
None
-
None
-
None
This is a problem because if the ReshardCollection DDL coordinator fails over, and re-sends `configvsr_reshard_collection`, while an FCV upgrade/downgrade starts. The `configvsr_reshard_collection` will return early with the "fcv transition in progress" guard, rather than join on the existing coordinator state machine. This then causes the ReshardCollection DDL coordinator to finish and release its DDL lock early while a resharding coordinator is still running.
Proposed solution: move the "fcv transition in progress" guard to after the coordinator state machine is created but before the coordinator does any real work and runs.
This should be safe because if fcv transition happens after the check, then fcv transition will pick up on the new coordinator state machine and abort resharding as usual . If fcv transition happens before the check, then the coordinator will immediately stop running before any real work has been done.
- is related to
-
SERVER-132143 Improve jstest coverage of resharding/setFCV mutual exclusion
-
- Needs Scheduling
-