gitlab-org--gitlab-foss/db/migrate/20190715042813_add_issue_id_to_versions.rb
Luke Duncalfe 177463007b Migrations for adding issue_id to versions table
These migrations do the following:

- Adds a new `issue_id` column to `versions`. This fixes an n+1 problem
  when loading versions for an issue in GraphQL as AR can now load from
  cache
- Change the unique restraint on versions.sha to be scoped to `issue_id`
  as in order to import version data, we need to allow duplicate `sha`
  values for versions
- Update all versions with an `issue_id`

https://gitlab.com/gitlab-org/gitlab-ee/issues/11090
2019-07-29 18:55:19 +00:00

13 lines
308 B
Ruby

# frozen_string_literal: true
class AddIssueIdToVersions < ActiveRecord::Migration[5.2]
DOWNTIME = false
def up
add_reference :design_management_versions, :issue, index: true, foreign_key: { on_delete: :cascade }
end
def down
remove_reference :design_management_versions, :issue
end
end