Commit f29bab3b authored by Arturo Herrero's avatar Arturo Herrero

Add instance column to services if missing

This is a corrective migration to keep the instance column and its
index. Upgrade from 12.7 to 12.9 removes the instance column as it was
first added in the normal migration and then removed in the post
migration.

12.8 removed the instance column in a post deployment migration
   https://gitlab.com/gitlab-org/gitlab/-/merge_requests/24885
12.9 added the instance column in a normal migration
   https://gitlab.com/gitlab-org/gitlab/-/merge_requests/25714
parent 361c2785
# frozen_string_literal: true
class AddMissingInstanceToServicess < ActiveRecord::Migration[6.0]
include Gitlab::Database::MigrationHelpers
DOWNTIME = false
disable_ddl_transaction!
# This is a corrective migration to keep the instance column.
# Upgrade from 12.7 to 12.9 removes the instance column as it was first added
# in the normal migration and then removed in the post migration.
#
# 12.8 removed the instance column in a post deployment migration https://gitlab.com/gitlab-org/gitlab/-/merge_requests/24885
# 12.9 added the instance column in a normal migration https://gitlab.com/gitlab-org/gitlab/-/merge_requests/25714
#
# rubocop:disable Migration/AddColumnWithDefault
# rubocop:disable Migration/UpdateLargeTable
def up
unless column_exists?(:services, :instance)
add_column_with_default(:services, :instance, :boolean, default: false)
end
end
# rubocop:enable Migration/AddColumnWithDefault
# rubocop:enable Migration/UpdateLargeTable
def down
# Does not apply
end
end
# frozen_string_literal: true
class AddMissingIndexToServiceUniqueInstancePerType < ActiveRecord::Migration[6.0]
include Gitlab::Database::MigrationHelpers
DOWNTIME = false
disable_ddl_transaction!
# This is a corrective migration to keep the index on instance column.
# Upgrade from 12.7 to 12.9 removes the instance column as it was first added
# in the normal migration and then removed in the post migration.
#
# 12.8 removed the instance column in a post deployment migration https://gitlab.com/gitlab-org/gitlab/-/merge_requests/24885
# 12.9 added the instance column in a normal migration https://gitlab.com/gitlab-org/gitlab/-/merge_requests/25714
def up
unless index_exists_by_name?(:services, 'index_services_on_type_and_instance')
add_concurrent_index(:services, [:type, :instance], unique: true, where: 'instance IS TRUE')
end
end
def down
# Does not apply
end
end
...@@ -13768,6 +13768,8 @@ COPY "schema_migrations" (version) FROM STDIN; ...@@ -13768,6 +13768,8 @@ COPY "schema_migrations" (version) FROM STDIN;
20200508091106 20200508091106
20200511092714 20200511092714
20200511145545 20200511145545
20200511162057
20200511162115
20200512085150 20200512085150
\. \.
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