diff options
Diffstat (limited to 'db/post_migrate/20221220075936_add_query_index_for_ci_pipeline_schedules.rb')
-rw-r--r-- | db/post_migrate/20221220075936_add_query_index_for_ci_pipeline_schedules.rb | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/db/post_migrate/20221220075936_add_query_index_for_ci_pipeline_schedules.rb b/db/post_migrate/20221220075936_add_query_index_for_ci_pipeline_schedules.rb new file mode 100644 index 00000000000..4fc64f66a83 --- /dev/null +++ b/db/post_migrate/20221220075936_add_query_index_for_ci_pipeline_schedules.rb @@ -0,0 +1,18 @@ +# frozen_string_literal: true + +class AddQueryIndexForCiPipelineSchedules < Gitlab::Database::Migration[2.1] + TABLE_NAME = :ci_pipeline_schedules + INDEX_NAME = :index_ci_pipeline_schedules_on_id_and_next_run_at_and_active + COLUMNS = %i[id next_run_at].freeze + INDEX_CONDITION = 'active = TRUE' + + disable_ddl_transaction! + + def up + add_concurrent_index(TABLE_NAME, COLUMNS, name: INDEX_NAME, where: INDEX_CONDITION) + end + + def down + remove_concurrent_index(TABLE_NAME, COLUMNS, name: INDEX_NAME) + end +end |