diff options
Diffstat (limited to 'doc/development')
-rw-r--r-- | doc/development/what_requires_downtime.md | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/doc/development/what_requires_downtime.md b/doc/development/what_requires_downtime.md index abd693cf72d..2574c2c0472 100644 --- a/doc/development/what_requires_downtime.md +++ b/doc/development/what_requires_downtime.md @@ -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 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 On PostgreSQL you can safely remove an existing column without the need for |