summaryrefslogtreecommitdiff
path: root/db/migrate/20200701205710_create_background_migration_jobs.rb
blob: 706b8bd5abe03f159bc840c62cbf5666ede695d0 (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
27
28
29
# frozen_string_literal: true

class CreateBackgroundMigrationJobs < ActiveRecord::Migration[6.0]
  include Gitlab::Database::MigrationHelpers

  DOWNTIME = false

  disable_ddl_transaction!

  def up
    unless table_exists?(:background_migration_jobs)
      create_table :background_migration_jobs do |t|
        t.timestamps_with_timezone
        t.integer :status, null: false, limit: 2, default: 0
        t.text :class_name, null: false
        t.jsonb :arguments, null: false

        t.index [:class_name, :arguments]
        t.index [:class_name, :status, :id]
      end
    end

    add_text_limit :background_migration_jobs, :class_name, 200
  end

  def down
    drop_table :background_migration_jobs
  end
end