summaryrefslogtreecommitdiff
path: root/db/migrate/20161014173530_create_label_priorities.rb
blob: 28937c81e026455bec689e2d2123dccf0f196d4b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
# rubocop:disable Migration/Timestamps
class CreateLabelPriorities < ActiveRecord::Migration
  include Gitlab::Database::MigrationHelpers

  DOWNTIME = true
  DOWNTIME_REASON = 'This migration adds foreign keys'

  disable_ddl_transaction!

  def up
    create_table :label_priorities do |t|
      t.references :project, foreign_key: { on_delete: :cascade }, null: false
      t.references :label, foreign_key: { on_delete: :cascade }, null: false
      t.integer :priority, null: false

      t.timestamps null: false
    end

    add_concurrent_index :label_priorities, [:project_id, :label_id], unique: true
    add_concurrent_index :label_priorities, :priority
  end

  def down
    drop_table :label_priorities
  end
end