[Feature flag] Enable use of sidechannel for internal fetches
What
Enable the :gitaly_fetch_internal_with_sidechannel feature flag, which converts internal fetches to use SSHUploadPackWithSidechannel instead of SSHUploadPack
Owners
- Team: Gitaly
- Most appropriate slack channel to reach out to: #g_create_gitaly
- Best individual to reach out to: pks-t
Expectations
What release does this feature occur in first?
The new RPC was introduced via 3d2b6d26 (proto: add SSHUploadPackWithSidechannel, 2022-01-12), released as part of v14.7.0. The feature flag to also convert our internal fetches was introduced with v14.9.0.
What are we expecting to happen?
No change in behaviour is expected. Potentially we may see smallish performance improvements.
What might happen if this goes wrong?
Internal fetches start to fail. These are used in the following RPCs:
- FetchSourcEBranch
- UserResolveConflicts
- UserCommitFiles
- UserRebaseConfirmable
- UserRevert
- ReplicateRepository
What can we monitor to detect problems with this?
Feature status for above RPCs.
Roll Out Steps
- 
Enable on staging - 
Is the required code deployed on staging? (howto) 
- 
Enable on staging (howto) 
- 
Add featureflagstaging to this issue (howto) 
- 
Test on staging (howto) 
- 
Verify the feature flag was used by checking Prometheus metric gitaly_feature_flag_checks_total
 
- 
- 
Enable on production - 
Is the required code deployed on production? (howto) 
- 
Enable on production in #production(howto)
- 
Add featureflagproduction to this issue 
- 
Verify the feature flag was used by checking Prometheus metric gitaly_feature_flag_checks_total
 
- 
- 
Default-enable the feature flag (optional, only required if backwards-compatibility concerns exist) - 
Wait for release containg default-disabled feature flag. 
- 
Change the feature flag to default-enabled (howto) 
- 
Wait for release containing default-enabled feature flag. 
 
- 
- 
Remove feature flag 
Please refer to the documentation of feature flags for further information.
Edited  by Patrick Steinhardt