Age | Commit message (Collapse) | Author |
|
- Move code for creating a new column from old into a function so that
it can be reused.
- Also add comments above the methods.
|
|
This is to accomodate prepended modules.
|
|
|
|
I noticed the doc/development/testing_guide/best_practices.md still
referenced the `[run mysql]` tags, etc. They no longer work, so I
removed them, then realised I had better clean up the rest of
doc/development !
|
|
MD002 - First header should be level 1
MD006 - Start bullets at beginning of line
MD019 - No multiple spaces after header style
MD022 - Headers surrounded by blank lines
MD025 - Only 1 level 1 header
MD028 - No blank lines within blockquote
MD038 - Spaces inside code span elements
|
|
Extending from ActiveRecord::Migration is deprecated, but was still used
in a bunch of places.
|
|
|
|
|
|
This works the same way as change_column_type_using_background_migration, but
for renaming a column. It takes a table, not a relation, to match its concurrent
counterpart.
Also, generalise the cleanup migrations to reduce code duplication.
|
|
A background column type change needs a cleanup step, like any background
migration. We should call that out explicitly in the documentation.
|
|
|
|
In a previous attempt (rolled back in
https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/16021) we tried
to migrate `issues.closed_at` from timestamp to timestamptz using a
regular migration. This has a bad impact on GitLab.com and as such was
rolled back.
This commit re-implements the original migrations using generic
background migrations, allowing us to still migrate the data in a single
release but without a negative impact on availability.
To ensure the database schema is up to date the background migrations
are performed inline in development and test environments. We also make
sure to not migrate that that doesn't need migrating in the first place
or has already been migrated.
|
|
(to be consistent)
|
|
|
|
Starting with GitLab 9.1.0 we will no longer allow downtime migrations
unless absolutely necessary. This commit updates the various developer
guides and adds code that is necessary to make zero downtime migrations
less painful.
|
|
|
|
[ci skip]
|
|
This guide describes various commonly used operations and the impact
they have on the availability of a GitLab instance.
|