Prepare indexes for ci_pipelines loose FKs
Create the following indexes:
- index for table
merge_requests:"index_merge_requests_on_head_pipeline_id_bigint" btree (head_pipeline_id_convert_to_bigint) - index for table
merge_request_metrics:"index_merge_request_metrics_on_pipeline_id_bigint" btree (pipeline_id_convert_to_bigint) - index for table
packages_build_infos:"index_packages_build_infos_on_pipeline_id_bigint" btree (pipeline_id_convert_to_bigint) - index for table
packages_build_infos:"index_packages_build_infos_package_id_pipeline_id_bigint_id" btree (package_id, pipeline_id_convert_to_bigint, id) - index for table
merge_trains:"index_merge_trains_on_pipeline_id_bigint" btree (pipeline_id_convert_to_bigint) - index for table
vulnerability_feedback:"index_vulnerability_feedback_on_pipeline_id_bigint" btree (pipeline_id_convert_to_bigint) - index for table
vulnerability_occurrence_pipelines:"index_vulnerability_occurrence_pipelines_on_pipeline_id" btree (pipeline_id_convert_to_bigint) - index for table
vulnerability_occurrence_pipelines:"vulnerability_occurrence_pipelines_on_unique_keys" UNIQUE, btree (occurrence_id, pipeline_id_convert_to_bigint)
See this swap step at here for:
- adding
ensure_batched_background_migration_is_finishedmigration to finalize the backfill in the first minor version after the required stop (see Adding required stops and check with release manager for the next required stop) - choose async/concurrent index creation depending on how long the index creation takes
Example MRs:
Edited by Tianwen Chen