Skip to content

Add background migration to remove duplicates LFS object projects

The following discussion from !22418 (merged) should be addressed:

  • @krasio started a discussion: (+1 comment)

    Should this index be unique? If yes we'll need to deal with existing duplicates.


We have an existing unique validation on LfsObjectsProject model for lfs_object_id scoped by project_id and repository_type. We don't have a unique index for this though and we should add one. This way, we can utilize things like ApplicationRecord#safe_find_or_create_by and keep data integrity in our database.

In this issue, we need to remove duplicate records first before adding the unique index.

Note: lfs_objects_projects is a high traffic table.

Edited by Javiera Tapia