-
Type:
Task
-
Resolution: Unresolved
-
Priority:
Major - P3
-
None
-
Affects Version/s: None
-
Component/s: None
-
None
-
Catalog and Routing
-
🟥 DDL
-
None
-
None
-
None
-
None
-
None
-
None
Spawned from SERVER-119697 (finding 1 in the CAR investigation).
Problem
MoveRangeCoordinators (and, more broadly, the chunk-operation coordinators that recently became coordinators as part of AuthShards) pin the FCV at the beginning of execution like any other coordinator. However, when they send commands to the recipient shards via an AlternativeClientRegion, they do not propagate the pinned FCV / VersionContext.
Example: move_range_coordinator.cpp sends startClone(), enterCriticalSection(), and commitChunkOnRecipient() without forwarding the pinned FCV:
https://github.com/10gen/mongo/blob/93388c59d7a0981dc04ee7c6414179e7a03bc0d9/src/mongo/db/s/move_range_coordinator.cpp#L338-L343
Notes from discussion
Per the discussion on SERVER-119697: chunk ops historically did not use OFCV and only recently became coordinators (AuthShards). This is likely a non-trivial amount of work and there may be gotchas/concerns, so it was agreed to track it in a separate ticket rather than folding it into the parent investigation.
Scope
- Confirm whether MoveRange/chunk-op coordinators are in scope for OFCV propagation.
- If so, propagate the pinned FCV/VersionContext to the recipient-shard commands.
- depends on
-
SERVER-108921 Consider propagating the version context to alternative client/opCtx
-
- Needs Scheduling
-
- is related to
-
SERVER-119697 Investigate if ShardingDDLCoordinators check feature flags inside AlternativeClientRegion
-
- Closed
-