Acceptance Testing: RepositoryService::RepackIncremental
Conversation: https://gitlab.com/gitlab-org/gitaly/issues/354
See the Migration Process documentation for more information on the Acceptance Testing stage of the process.
Feature Toggle Name: gitaly_repack_incremental
1. Preparation
-
Routes: what routes use this migration? - Sidekiq
GitGarbageCollectWorker#perform
- Sidekiq
-
Sentry: -
Ensure that all gitaly_migrate
issues in theGitLab.com
tracker are either assigned or resolved: https://sentry.gitlap.com/gitlab/gitlabcom/?query=is%3Aunresolved+is%3Aunassigned+gitaly_migrate -
Ensure that all issues in the Gitaly Production
tracker are either assigned or resolved: https://sentry.gitlap.com/gitlab/gitaly-production/?query=is%3Aunresolved+is%3Aunassigned
-
-
Grafana -
Link to the Gitaly Feature Status dashboard (edit accordingly):
-
-
Kibana -
Provide a Kibana short-url link to Gitaly logs related to this endpoint https://log.gitlap.com/goto/582975721130fc425f63c234e6fa2a9f
-
2. Development and Staging Trial
-
Enable on dev.gitlab.org
:-
ssh into dev.gitlab.org
and enable the feature running by runningFeature.get('gitaly_FEATURE_NAME').enable
on a rails console. -
Perform some testing and leave the feature enabled -
Make sure it's disabled after the tests if necessary
-
-
Enable on staging.gitlab.com
in#development
-
Perform some testing and leave the feature enabled -
Make sure it's disabled after the tests if necessary
-
2. Low Impact Trial
-
Set Gitaly to 5% using the command !feature-set gitaly_FEATURE_NAME 5
in#production
-
Leave running for at least 2 hours -
Monitor sentry, grafana and kibaba links above, every 30 minutes -
On usual activity, disable trial with !feature-set gitaly_FEATURE_NAME false
in#production
-
2. Mid Impact Trial
-
Set Gitaly to 50% using the command !feature-set gitaly_FEATURE_NAME 50
in#production
-
Leave running for at least 24 hours -
Monitor sentry, grafana and kibaba links above, every few hours -
On usual activity, disable trial with !feature-set gitaly_FEATURE_NAME false
in#production
-
2. Full Impact Trial
-
Set Gitaly to 100% using the command !feature-set gitaly_FEATURE_NAME 100
in#production
-
Leave running for at least a week -
Monitor sentry, grafana and kibaba links above daily -
On usual activity, disable trial with !feature-set gitaly_FEATURE_NAME false
in#production
-
3. Outcome
-
Report on the outcome of the tests (leave comments on this issue)
-
Did the migration perform as expected? -
Did the code have reasonable performance characteristics? -
Did error rates jump to an unacceptable level?
-
-
Additional Runbook information required? -
If so, was it added? (link to MR)
-
-
Prometheus Alerts Added -
If so, was it added? (link to MR)
-
Edited by username-removed-487110