From f9e1ebbd83425c52b2ce93d0bec15b5be3fe9206 Mon Sep 17 00:00:00 2001 From: Marius Bobin Date: Tue, 7 Feb 2023 16:46:48 +0200 Subject: [PATCH] Schedule ci_builds FK indexes for async creation Changelog: other --- ...ace_metadata_on_partition_id_and_build_id.rb | 17 +++++++++++++++++ ..._job_artifacts_on_partition_id_and_job_id.rb | 17 +++++++++++++++++ db/schema_migrations/20230207143602 | 1 + db/schema_migrations/20230207143844 | 1 + 4 files changed, 36 insertions(+) create mode 100644 db/post_migrate/20230207143602_schedule_fk_index_to_ci_build_trace_metadata_on_partition_id_and_build_id.rb create mode 100644 db/post_migrate/20230207143844_schedule_fk_index_to_ci_job_artifacts_on_partition_id_and_job_id.rb create mode 100644 db/schema_migrations/20230207143602 create mode 100644 db/schema_migrations/20230207143844 diff --git a/db/post_migrate/20230207143602_schedule_fk_index_to_ci_build_trace_metadata_on_partition_id_and_build_id.rb b/db/post_migrate/20230207143602_schedule_fk_index_to_ci_build_trace_metadata_on_partition_id_and_build_id.rb new file mode 100644 index 00000000000000..ae51e312fc4141 --- /dev/null +++ b/db/post_migrate/20230207143602_schedule_fk_index_to_ci_build_trace_metadata_on_partition_id_and_build_id.rb @@ -0,0 +1,17 @@ +# frozen_string_literal: true + +class ScheduleFkIndexToCiBuildTraceMetadataOnPartitionIdAndBuildId < Gitlab::Database::Migration[2.1] + disable_ddl_transaction! + + INDEX_NAME = :index_ci_build_trace_metadata_on_partition_id_build_id + TABLE_NAME = :ci_build_trace_metadata + COLUMNS = [:partition_id, :build_id] + + def up + prepare_async_index(TABLE_NAME, COLUMNS, name: INDEX_NAME, unique: true) + end + + def down + unprepare_async_index_by_name(TABLE_NAME, INDEX_NAME) + end +end diff --git a/db/post_migrate/20230207143844_schedule_fk_index_to_ci_job_artifacts_on_partition_id_and_job_id.rb b/db/post_migrate/20230207143844_schedule_fk_index_to_ci_job_artifacts_on_partition_id_and_job_id.rb new file mode 100644 index 00000000000000..c9eda410b34464 --- /dev/null +++ b/db/post_migrate/20230207143844_schedule_fk_index_to_ci_job_artifacts_on_partition_id_and_job_id.rb @@ -0,0 +1,17 @@ +# frozen_string_literal: true + +class ScheduleFkIndexToCiJobArtifactsOnPartitionIdAndJobId < Gitlab::Database::Migration[2.1] + disable_ddl_transaction! + + INDEX_NAME = :index_ci_job_artifacts_on_partition_id_job_id + TABLE_NAME = :ci_job_artifacts + COLUMNS = [:partition_id, :job_id] + + def up + prepare_async_index(TABLE_NAME, COLUMNS, name: INDEX_NAME) + end + + def down + unprepare_async_index_by_name(TABLE_NAME, INDEX_NAME) + end +end diff --git a/db/schema_migrations/20230207143602 b/db/schema_migrations/20230207143602 new file mode 100644 index 00000000000000..f7b6b5c106b9dc --- /dev/null +++ b/db/schema_migrations/20230207143602 @@ -0,0 +1 @@ +5a74e84b0cb956fcd04d85cac572694788aef1a41b43280ad9fd911cb314ef8c \ No newline at end of file diff --git a/db/schema_migrations/20230207143844 b/db/schema_migrations/20230207143844 new file mode 100644 index 00000000000000..380ad3ec54d5c6 --- /dev/null +++ b/db/schema_migrations/20230207143844 @@ -0,0 +1 @@ +a2df7a3f9f3020294538a282f1ef8d365ac28026e7653c03a2bb1ec5c873f464 \ No newline at end of file -- GitLab