Skip to content

Fix argument type for background migration

Markus Koller requested to merge 290008-fix-background-migration-arguments into master

What does this MR do?

Follow-up to !49463 (merged), main issue #290008 (closed).

I got the argument type wrong, I was expecting an array of project IDs but missed that migrate_in uses splat to pass in each ID as its own argument.

Tested locally by:

  1. Creating some duplicate records.
  2. Running the new post migration in db/post_migrate/20210112143418_remove_duplicate_services2.rb.
  3. Watching the BackgroundMigration jobs being processed in Sidekiq.
  4. Verifying that the duplicate records were removed, and others kept.

Migration output

$ rails db:migrate:up VERSION=20201207165956
== 20201207165956 RemoveDuplicateServices: migrating ==========================
== 20201207165956 RemoveDuplicateServices: migrated (0.0000s) =================

$ rails db:migrate:down VERSION=20201207165956
== 20201207165956 RemoveDuplicateServices: reverting ==========================
== 20201207165956 RemoveDuplicateServices: reverted (0.0000s) =================
$ rails db:migrate:up VERSION=20210112143418
== 20210112143418 RemoveDuplicateServices2: migrating =========================
== 20210112143418 RemoveDuplicateServices2: migrated (0.0069s) ================

$ rails db:migrate:down VERSION=20210112143418
== 20210112143418 RemoveDuplicateServices2: reverting =========================
== 20210112143418 RemoveDuplicateServices2: reverted (0.0000s) ================

Does this MR meet the acceptance criteria?

Conformity

Availability and Testing

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 Markus Koller

Merge request reports