diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2020-01-16 00:08:48 +0300 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2020-01-16 00:08:48 +0300 |
commit | 600ca978129e3ccab758f57d60786cefe66ad775 (patch) | |
tree | a3675da98c7c245adf7e93f82f9c26a38cc3c29d /db/migrate/20200110089001_fix_invalid_epic_sourcing_milestone_ids.rb | |
parent | 571d993b49313dd806bd3f6af16d36c26d9d28ca (diff) |
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'db/migrate/20200110089001_fix_invalid_epic_sourcing_milestone_ids.rb')
-rw-r--r-- | db/migrate/20200110089001_fix_invalid_epic_sourcing_milestone_ids.rb | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/db/migrate/20200110089001_fix_invalid_epic_sourcing_milestone_ids.rb b/db/migrate/20200110089001_fix_invalid_epic_sourcing_milestone_ids.rb new file mode 100644 index 00000000000..04f65c3a810 --- /dev/null +++ b/db/migrate/20200110089001_fix_invalid_epic_sourcing_milestone_ids.rb @@ -0,0 +1,24 @@ +# frozen_string_literal: true + +class FixInvalidEpicSourcingMilestoneIds < ActiveRecord::Migration[5.2] + DOWNTIME = false + + def up + nullify_invalid_data(:start_date_sourcing_milestone_id) + nullify_invalid_data(:due_date_sourcing_milestone_id) + end + + def down + # no-op + end + + private + + def nullify_invalid_data(column_name) + execute(<<-SQL.squish) + UPDATE epics + SET #{column_name} = null + WHERE #{column_name} NOT IN (SELECT id FROM milestones); + SQL + end +end |