Welcome to mirror list, hosted at ThFree Co, Russian Federation.

20231124133015_drop_idx_projects_id_created_at_disable_overriding_approvers_false_for_gitlab_com.rb « post_migrate « db - gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
blob: 8da8d726ab8b6d3a7dc31bce3f2c09733b758034 (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
30
31
32
33
34
# frozen_string_literal: true

class DropIdxProjectsIdCreatedAtDisableOverridingApproversFalseForGitlabCom < Gitlab::Database::Migration[2.2]
  milestone '16.7'

  disable_ddl_transaction!

  TABLE_NAME = :projects
  INDEX_NAME = :idx_projects_id_created_at_disable_overriding_approvers_false

  def up
    return unless should_run?

    remove_concurrent_index_by_name TABLE_NAME, INDEX_NAME
  end

  def down
    return unless should_run?

    add_concurrent_index(
      TABLE_NAME,
      [:id, :created_at],
      where: "(disable_overriding_approvers_per_merge_request = FALSE) OR " \
             "(disable_overriding_approvers_per_merge_request IS NULL)",
      name: INDEX_NAME
    )
  end

  private

  def should_run?
    Gitlab.com_except_jh?
  end
end