[SERVER-55858] Enforce transition to requires-fcv after feature flag is changed from disabled to enabled by default Created: 07/Apr/21  Updated: 29/Oct/23  Resolved: 23/Jul/21

Status: Closed
Project: Core Server
Component/s: None
Affects Version/s: None
Fix Version/s: 5.1.0-rc0

Type: Improvement Priority: Major - P3
Reporter: Robert Guo (Inactive) Assignee: Mikhail Shchatko
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Related
is related to SERVER-58793 Add check_feature_flag_tags task to c... Closed
Backwards Compatibility: Fully Compatible
Sprint: STM 2021-07-26, STM 2021-08-09
Participants:
Story Points: 3

 Description   

Background info: Feature release pipeline from internal to user-facing:

  • Feature flags - one per feature - switch for individual features. E.g. (featureFlagNewQueryFeature, featureFlagNewStorageFeature). Eventually all flags go away.
  • Wire protocol versions, index versions etc...
  • FCV - feature compatibility version
  • API Version - the user-facing version.

Impl sketch:

  • Evergreen applies your code changes as a patch in a patch build, so you can get the code from the base commit and run that. The patch itself is not going to change how the generator gets called (unless you change it explicitly). This enables you to run the feature flag generator for the patched commit to give you two different feature flag files.
  • Compare the two files, if the newer one is missing flags, check that all jstest files that previously had a tag for the featureFlag that was just enabled by default now have requires_fcv_(LATEST_FCV) tag
    You can compare the two files as follows by calling the selector (filter_tests()) in resmoke with the following dictionary and js_test for test_kind arg.

    selector:
      roots:
        - jstests/core/*.js
      include_with_any_tags:
        - featureFlagShardingFullDDLSupport  # TODO: Replace this with the tag you want.
    

  • Add a new task to the commit queue and the !RHEL 8 non-feature flags build variant that runs the above.
  • Send out an email with the new task to server and query.


 Comments   
Comment by Vivian Ge (Inactive) [ 06/Oct/21 ]

Updating the fixversion since branching activities occurred yesterday. This ticket will be in rc0 when it’s been triggered. For more active release information, please keep an eye on #server-release. Thank you!

Comment by Githook User [ 23/Jul/21 ]

Author:

{'name': 'Mikhail Shchatko', 'email': 'mikhail.shchatko@mongodb.com', 'username': 'MikhailShchatko'}

Message: SERVER-55858 Enforce transition to requires-fcv after feature flag is changed from disabled to enabled by default
Branch: master
https://github.com/mongodb/mongo/commit/fcdbc97ec75cad751764c43343e018d0ffd3f642

Comment by Mikhail Shchatko [ 23/Jul/21 ]

We will add the task to the commit-queue in SERVER-58793

Generated at Thu Feb 08 05:37:40 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.