Add project_id to merge_request_diff_files

What does this MR do and why?

Similar to !176431 (closed), here we add project_id to merge_request_diff_filess

  • Add column
  • Update table sync trigger function

References

Please include cross links to any resources that are relevant to this MR. This will give reviewers and future readers helpful context to give an efficient review of the changes introduced.

Database

Up

main: == 20250224231330 AddProjectIdToMergeRequestDiffFiles: migrating ==============
main: -- add_column(:merge_request_diff_files, :project_id, :bigint, {:if_not_exists=>true})
main:    -> 0.0196s
main: == 20250224231330 AddProjectIdToMergeRequestDiffFiles: migrated (0.0243s) =====

main: == 20250303230228 AddAsyncIndexToMergeRequestDiffFiles: migrating =============
main: -- index_exists?(:merge_request_diff_files, :project_id, {:name=>"index_merge_request_diff_files_on_project_id", :algorithm=>:concurrently})
main:    -> 0.0010s
main: -- add_index_options(:merge_request_diff_files, :project_id, {:name=>"index_merge_request_diff_files_on_project_id", :algorithm=>:concurrently})
main:    -> 0.0001s
main: == 20250303230228 AddAsyncIndexToMergeRequestDiffFiles: migrated (0.0286s) ====

Down

main: == [advisory_lock_connection] object_id: 131660, pg_backend_pid: 23039
main: == 20250224231330 AddProjectIdToMergeRequestDiffFiles: reverting ==============
main: -- transaction_open?(nil)
main:    -> 0.0000s
main: -- remove_column(:merge_request_diff_files, :project_id)
main:    -> 0.0012s
main: == 20250224231330 AddProjectIdToMergeRequestDiffFiles: reverted (0.0742s) =====

main: == 20250303230228 AddAsyncIndexToMergeRequestDiffFiles: reverting =============
main: -- index_name(:merge_request_diff_files, "index_merge_request_diff_files_on_project_id")
main:    -> 0.0000s
main: == 20250303230228 AddAsyncIndexToMergeRequestDiffFiles: reverted (0.0168s) ====

Related to Add sharding key to merge_request_diff_commits ... (#501473 - closed)

Edited by Kerri Miller

Merge request reports

Loading