Skip to content

Schedule indexes for FK referencing ci_job_artifacts

Max Orefice requested to merge morefice/prepare-ci-job-artifacts-index-fk into master

Ref: &11817 (closed)

What does this MR do and why?

This MR prepares Ci::JobArtifact for partitioning and will enqueue 2 index that will be created this weekend during low traffic.

It creates 2 asynchronous indexes required to partition this table as FK referencing this table must including the partitioning key column.

Referenced by:
    TABLE "ci_build_trace_metadata" CONSTRAINT "fk_21d25cac1a" FOREIGN KEY (trace_artifact_id) REFERENCES ci_job_artifacts(id) ON DELETE CASCADE
    TABLE "ci_job_artifact_states" CONSTRAINT "fk_rails_80a9cba3b2" FOREIGN KEY (job_artifact_id) REFERENCES ci_job_artifacts(id) ON DELETE CASCADE

In a follow up MR we will add those indexes for self-instance users.

Why are we doing this?

Mandatory steps in order to partition a table as explained in our documentation.

MR acceptance checklist

This checklist encourages us to confirm any changes have been analyzed to reduce risks in quality, performance, reliability, security, and maintainability.

Merge request reports