-
Type:
Task
-
Resolution: Unresolved
-
Priority:
Major - P3
-
None
-
Affects Version/s: 8.3.0-rc0
-
Component/s: None
-
None
-
Catalog and Routing
-
CAR Team 2025-10-27, CAR Team 2025-11-10, CAR Team 2025-11-24
-
🟩 Routing and Topology
-
None
-
None
-
None
-
None
-
None
-
None
Currently, auditing uses of a FCV-gated feature flag are not racy requires reasoning about how and when the flag is checked, so it becomes a time expensive task (SERVER-91221).
However, if a feature flag is always checked with an Operation FCV, the possibility of races is heavily reduced. We are also going towards a world where all operations acquire an OFCV to reduce it even further.
Add an boolean attribute requires_operation_fcv over FCV-gated feature flag definitions. If enabled, it forces checks of that feature flag to be done with an OFCV, so that it can be easily verified it's used safely.
Something similar was done in SERVER-101559 so that may be taken as a reference.
- is depended on by
-
SERVER-111452 Set viewless timeseries feature flag as OFCV required
-
- Backlog
-
-
SERVER-112431 Review documentation for shard-local OFCV & VersionContext
-
- Backlog
-
- is related to
-
SERVER-105445 Provide a less verbose way to check FCV-gated feature flags
-
- Backlog
-
-
SERVER-91221 Catalog and Routing: Audit feature flag checks for unsafe races with setFCV
-
- Closed
-
-
SERVER-101559 Force new feature flag checks to use operation FCV-aware checks
-
- Closed
-