-
Type: Task
-
Resolution: Fixed
-
Priority: Major - P3
-
Affects Version/s: None
-
Component/s: Replication, Upgrade/Downgrade
-
None
-
Fully Compatible
-
Security 2020-10-19
Associate each feature flag with the release version for the feature. Enforce that features with default:false have no release version and features with default:true have a release version. version is required to be a string. For example:
feature_flags: featureFlagToaster: description: "Make toast" cpp_varname: gToaster default: false featureFlagBlender: description: "Make smoothie" cpp_varname: gBlender default: true version: “4.7”
Provide the helpers:
feature_flags::gToaster.isEnabled(ServerGlobalParams::FeatureCompatibility::Version) feature_flags::gToaster.isEnabledAndIgnoreFCV() feature_flags::gToaster.getVersion() // throws if the feature is not enabled
For an enabled feature with default:false, getVersion() will return ServerGlobalParams::FeatureCompatibility::kLatest.
- is depended on by
-
SERVER-51111 Make getParameter return the release version of enabled feature flags
- Closed
-
SERVER-50423 Change memberConfig's slaveDelay field to secondaryDelaySecs in FCV 4.7
- Closed
- is duplicated by
-
SERVER-51111 Make getParameter return the release version of enabled feature flags
- Closed
- related to
-
SERVER-60058 Add helper library to check feature flags in jstests
- Closed