Figure out sharding key for merge_request_diff_commit_users, or exempt_from_sharding

MR !159119 (merged) designated merge_request_diff_commit_users as gitlab_main_clusterwide.

This should not be clusterwide as there are too many rows to sync. The table has about 9 million entries.

Also when Org mover moves the merge_request_diff_commits for an Org, the commit_author_id and committer_id associations will be missing. Alternatively, we need to re-create the MergeRequest::DiffCommitUser after moving.

Action items

  • Move merge_request_diff_commit_users to become gitlab_main_cell. gitlab_main_clusterwide are only for tables that will be replicated to many/all cells in the cluster.
  • Decide if Org mover will replicate merge_request_diff_commit_users, or re-create on target cell. This will inform if we will shard this table, or exempt this from sharding.
Edited by Thong Kuah