Skip to content

Remove ci_destroy_unlocked_pipeline_artifacts feature flag

What does this MR do and why?

Currently the legacy SQL query for finding expired CI pipeline artifacts (not to be confused with CI job artifacts) can time out since it may have to perform a nested loop join between ci_pipeline_artifacts with ci_pipelines.

In !97194 (merged), we added a locked column to speed up the finding of expirable artifacts. When a pipeline is unlocked, it will also unlock the associated pipeline artifacts (!97228 (merged)).

!98633 (merged) takes advantage of this denormalization by modifying Ci::PipelineArtifacts::DestroyAllExpiredService to destroy unlocked and expired artifacts with the help of this locked column.

Deleting these artifacts via this fast query has been enabled in ci_destroy_unlocked_pipeline_artifacts feature flag with no errors in 24 hours. We can drop this feature flag.

Now that the background migration in !99182 (merged) is complete on GitLab.com, we can later drop the legacy query.

Relates to #372500 (closed)

MR acceptance checklist

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

Edited by Stan Hu

Merge request reports