Re-enqueue blocked_by link replacement
What does this MR do?
This MR re-enqueues again a background migration which was already scheduled before - !45262 (merged).
The reason is that the original MR didn't handle all bi-directional links - it handled issue1 is blocked by issue2 and issue2 blocks issue1
, but it didn't handle issue1 is blocked by issue2 and issue2 is related to issue1
(!45262 (comment 440047856)). There are currently 20 bi-directional links on .com matching the DELETE subquery below.
The updated DELETE query (other queries are unchanged): https://explain.depesz.com/s/1a91
DELETE FROM "issue_links" WHERE "issue_links"."id" IN (SELECT opposite_links.id FROM "issue_links" INNER JOIN issue_links as opposite_links ON issue_links.source_id = opposite_links.target_id AND issue_links.target_id = opposite_links.source_id WHERE "issue_links"."id" BETWEEN 0 AND 1000 AND "issue_links"."link_type" = 2)
Related to #225919 (closed)
Does this MR meet the acceptance criteria?
Conformity
-
Changelog entry -
Documentation (if required) -
Code review guidelines -
Merge request performance guidelines -
Style guides -
Database guides -
Separation of EE specific content
Availability and Testing
-
Review and add/update tests for this feature/bug. Consider all test levels. See the Test Planning Process. -
Tested in all supported browsers -
Informed Infrastructure department of a default or new setting change, if applicable per definition of done
Security
If this MR contains changes to processing or storing of credentials or tokens, authorization and authentication methods and other items described in the security review guidelines:
-
Label as security and @ mention @gitlab-com/gl-security/appsec
-
The MR includes necessary changes to maintain consistency between UI, API, email, or other methods -
Security reports checked/validated by a reviewer from the AppSec team
Edited by Jan Provaznik