diff options
Diffstat (limited to 'doc/development/deleting_migrations.md')
-rw-r--r-- | doc/development/deleting_migrations.md | 42 |
1 files changed, 7 insertions, 35 deletions
diff --git a/doc/development/deleting_migrations.md b/doc/development/deleting_migrations.md index 25ec1c08335..5d5ca431598 100644 --- a/doc/development/deleting_migrations.md +++ b/doc/development/deleting_migrations.md @@ -1,39 +1,11 @@ --- -stage: none -group: unassigned -info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/engineering/ux/technical-writing/#assignments +redirect_to: 'database/deleting_migrations.md' +remove_date: '2022-07-08' --- -# Delete existing migrations +This document was moved to [another location](database/deleting_migrations.md). -When removing existing migrations from the GitLab project, you have to take into account -the possibility of the migration already been included in past releases or in the current release, and thus already executed on GitLab.com and/or in self-managed instances. - -Because of it, it's not possible to delete existing migrations, as that could lead to: - -- Schema inconsistency, as changes introduced into the database were not rolled back properly. -- Leaving a record on the `schema_versions` table, that points out to migration that no longer exists on the codebase. - -Instead of deleting we can opt for disabling the migration. - -## Pre-requisites to disable a migration - -Migrations can be disabled if: - -- They caused a timeout or general issue on GitLab.com. -- They are obsoleted, for example, changes are not necessary due to a feature change. -- Migration is a data migration only, that is, the migration does not change the database schema. - -## How to disable a data migration? - -In order to disable a migration, the following steps apply to all types of migrations: - -1. Turn the migration into a no-op by removing the code inside `#up`, `#down` - or `#perform` methods, and adding `# no-op` comment instead. -1. Add a comment explaining why the code is gone. - -Disabling migrations requires explicit approval of Database Maintainer. - -## Examples - -- [Disable scheduling of productivity analytics](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/17253) +<!-- This redirect file can be deleted after <2022-07-08>. --> +<!-- Redirects that point to other docs in the same project expire in three months. --> +<!-- Redirects that point to docs in a different project or site (for example, link is not relative and starts with `https:`) expire in one year. --> +<!-- Before deletion, see: https://docs.gitlab.com/ee/development/documentation/redirects.html --> |