Skip to content

Acceptance Testing: Conversation CommitService::CommitPatch

~Conversation: #324 (closed)

See the Migration Process documentation for more information on the Acceptance Testing stage of the process.

Details

  • Feature Toggle Name: gitaly_commit_patch
  • GRPC Service: CommitService::CommitPatch
  • Required Gitaly Version: vX.X.X
  • Required GitLab Version: v10.0

1. Preparation

  • Routes: what routes use this migration?
    1. Please list a set of routes that are known to use this endpoint...
    2. ...
    3. ...

2. Development Trial

Check Dev Server Versions

Enable on dev.gitlab.org:

Then leave running while monitoring and performing some testing through web, api or SSH.

Monitor (initially )

Continue?

  • On unexpectedly high calls rates, error rates, CPU activity, etc, disable trial immediately with !feature-set gitaly_commit_patch false in #dev-gitlab otherwise leave running and proceed proceed to next stage.

3. Staging Trial

Check Staging Server Versions

Enable on staging.gitlab.com

Then leave running while monitoring for at least 15 minutes while performing some testing through web, api or SSH.

Monitor (at least every 5 minutes, preferably real-time)

Continue?

  • On unexpectedly high calls rates, error rates, CPU activity, etc, disable trial immediately using !feature-set gitaly_commit_patch false in #development otherwise leave running and proceed to next stage.

4. Production Server Version Check

5. Initial Impact Check

  • Create an issue in the infrastructure tracker: Create issue now
  • Set Gitaly to 1% using the command !feature-set gitaly_commit_patch 1 in #production

Then leave running while monitoring for at least 15 minutes while performing some testing through web, api or SSH.

Monitor (at least every 5 minutes, preferably real-time)

Continue?

  • On unexpectedly high calls rates, error rates, CPU activity, etc, disable trial immediately with !feature-set gitaly_commit_patch false in #production otherwise leave running and proceed to next stage.

6. Low Impact Trial

  • Set Gitaly to 5% using the command !feature-set gitaly_commit_patch 5 in #production

Then leave running while monitoring for at least 2 hours.

Monitor (at least every 20 minutes)

Continue?

  • On unexpectedly high calls rates, error rates, CPU activity, etc, disable trial immediately with !feature-set gitaly_commit_patch false in #production otherwise leave running and proceed to next stage.

7. Mid Impact Trial

  • Set Gitaly to 50% using the command !feature-set gitaly_commit_patch 50 in #production

Then leave running while monitoring for at least 24 hours.

Monitor (at least every few hours)

Continue?

  • On unexpectedly high calls rates, error rates, CPU activity, etc, disable trial immediately with !feature-set gitaly_commit_patch false in #production otherwise leave running and proceed to next stage.

8. Full Impact Trial

  • Set Gitaly to 100% using the command !feature-set gitaly_commit_patch 100 in #production

Then leave running while monitoring for at least 1 week.

Monitor (at least every day)

Success?

  • Close this issue and mark the ~Conversation as ~"Migration:Opt-In"
Edited by Andrew Newdigate
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information