Commit ae2d3c41 authored by Achilleas Pipinellis's avatar Achilleas Pipinellis

Merge branch 'add-column-with-default-to-downtime-guide' into 'master'

Mention add_column_with_default in downtime guide

## What does this MR do?

This extends the "What causes downtime" guide with a mention of the `add_column_with_default` migration helper.

## Are there points in the code the reviewer needs to double check?

Spelling, grammar, etc.

## Why was this MR needed?

Currently the guide may lead one to believe it's not possible at all to add a column with a default value.

## Does this MR meet the acceptance criteria?

- [x] ~~[CHANGELOG](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CHANGELOG) entry added~~
- [x] [Documentation created/updated](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/doc/development/doc_styleguide.md)
- Tests
  - [ ] All builds are passing
- [ ] Conform by the [style guides](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/CONTRIBUTING.md#style-guides)
- [ ] Branch has no merge conflicts with `master` (if you do - rebase it please)
- [x] [Squashed related commits together](https://git-scm.com/book/en/Git-Tools-Rewriting-History#Squashing-Commits)

See merge request !5719
parents b50e8c29 ee451ea5
...@@ -31,6 +31,14 @@ operation, even when using `ALGORITHM=INPLACE` and `LOCK=NONE`. This means ...@@ -31,6 +31,14 @@ operation, even when using `ALGORITHM=INPLACE` and `LOCK=NONE`. This means
downtime _may_ be required when modifying large tables as otherwise the downtime _may_ be required when modifying large tables as otherwise the
operation could potentially take hours to complete. operation could potentially take hours to complete.
Adding a column with a default value _can_ be done without requiring downtime
when using the migration helper method
`Gitlab::Database::MigrationHelpers#add_column_with_default`. This method works
similar to `add_column` except it updates existing rows in batches without
blocking access to the table being modified. See ["Adding Columns With Default
Values"](migration_style_guide.html#adding-columns-with-default-values) for more
information on how to use this method.
## Dropping Columns ## Dropping Columns
On PostgreSQL you can safely remove an existing column without the need for On PostgreSQL you can safely remove an existing column without the need for
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment