summaryrefslogtreecommitdiff
path: root/db/migrate/20230313012609_create_search_namespace_index_assignments.rb
blob: ea3760ead7483537425c04c5573756409764e0ad (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
# frozen_string_literal: true

class CreateSearchNamespaceIndexAssignments < Gitlab::Database::Migration[2.1]
  enable_lock_retries!

  def change
    create_table :search_namespace_index_assignments do |t|
      t.references :namespace, foreign_key: true, null: true, on_delete: :nullify
      t.bigint :search_index_id, index: true, null: false
      t.bigint :namespace_id_non_nullable, null: false
      t.timestamps_with_timezone null: false
      t.integer :namespace_id_hashed, null: false
      t.text :index_type, null: false, limit: 255
    end

    add_index :search_namespace_index_assignments,
      [:namespace_id, :index_type],
      unique: true,
      name: 'index_search_namespace_index_assignments_uniqueness_index_type'

    add_index :search_namespace_index_assignments,
      [:namespace_id, :search_index_id],
      unique: true,
      name: 'index_search_namespace_index_assignments_uniqueness_on_index_id'
  end
end