[Feature flag] Rollout of `track_file_size_over_highlight_limit`
Feature
track_file_size_over_highlight_limit
will track how many times a file's size is bigger than our text/syntax highlighting file size limit. (Gitlab.config.extra['maximum_text_highlight_size_kilobytes']
)
We can use this data to help make a decision for Determine the right file size limit for highlighting files
Reference
- Ensure highlighting limits are documented, configurable, and monitorable
- Adding initial tracking for file size highlight limits
- Determine the right file size limit for highlighting files (#330894)
Owners
- Team: Source Code
- Most appropriate slack channel to reach out to: #g_create_code-review
- Best individual to reach out to: Gary Holtz (@garyh)
- PM: Matt Nohr (@mnohr)
Stakeholders
The Rollout Plan
- Partial Rollout on GitLab.com with beta groups
- Rollout on GitLab.com for a certain period (How long)
- Percentage Rollout on GitLab.com
- Rollout Feature for everyone as soon as it's ready
Beta Groups/Projects:
-
gitlab-org/gitlab
project -
gitlab-org
/gitlab-com
groups - ...
Expectations
What are we expecting to happen?
We'll start collecting data on how often files are over our highlighting size limit.
We'll have another piece of the puzzle about how to solve #330894 (closed)
What might happen if this goes wrong?
What can we monitor to detect problems with this?
Rollout Timeline
Rollout Steps
Preparation Phase
-
Enable on staging ( /chatops run feature set track_file_size_over_highlight_limit true --staging
) -
Test on staging -
Ensure that documentation has been updated (More info) -
Announce on the issue an estimated time this will be enabled on GitLab.com -
Check if the feature flag change needs to be accompagnied with a change management issue. Cross link the issue here if it does.
Partial Rollout Phase
-
Enable on GitLab.com for individual groups/projects listed above and verify behaviour ( /chatops run feature set --project=gitlab-org/gitlab feature_name true
) -
Verify behaviour (See Beta Groups) and add details with screenshots as a comment on this issue -
If it is possible to perform an incremental rollout, this should be preferred. Proposed increments are: 10%
,50%
,100%
. Proposed minimum time between increments is 15 minutes.- When setting percentages, make sure that the feature works correctly between feature checks. See #327117 (closed) for more information
- For actor-based rollout:
/chatops run feature set feature_name 10 --actors
- For time-based rollout:
/chatops run feature set feature_name 10
Full Rollout Phase
-
Make the feature flag enabled by default i.e. Change default_enabled
totrue
-
Cross post chatops slack command to #support_gitlab-com
(more guidance when this is necessary in the dev docs) and in your team channel -
Announce on the issue that the flag has been enabled -
Create a cleanup issue using the "Feature Flag Removal" template
Rollback Steps
-
This feature can be disabled by running the following Chatops command:
/chatops run feature set --project=gitlab-org/gitlab track_file_size_over_highlight_limit false