Skip to content

Prepare foreign keys for bigint conversion on merge_requests Stage One

What does this MR do and why?

Stage One, Step Two, for merge_requests table bigint migration, as part of swapping merge_requests table int columns.

The whole columns are, COLUMNS = %i[latest_merge_request_diff_id assignee_id author_id id last_edited_by_id merge_user_id milestone_id source_project_id target_project_id updated_by_id].freeze

We focus on columns assignee_id, merge_user_id, updated_by_id, milestone_id, source_project_id in stage one with this MR.

  • Ensure int to bigint backfill job is finished
  • Synchronously create indexes for non-gitlab.com envs
  • Create not valid foreign keys
  • Queue asynchronous foreign key validation

References

Issue - Swap MergeRequest ID columns (Step 2) (#507695)

Screenshots or screen recordings

Before After

How to set up and validate locally

MR acceptance checklist

Evaluate this MR against the MR acceptance checklist. It helps you analyze changes to reduce risks in quality, performance, reliability, security, and maintainability.

Edited by zli

Merge request reports

Loading