Split off gitlab_main_user schema

What does this MR do and why?

Split off gitlab_main_user schema.

A big part of gitlab_main_clusterwide user is user-related data, so we segment this to its own schema. For now it is planned to have user login features be clusterwide, so this change will facilitate this while preventing other user related features from escaping organization isolation more than necessary.

  • gitlab_main_user is not allowed to cross-FK with gitlab_main_clusterwide
  • For now, gitlab_main_user is allowed to cross-FK with gitlab_main_cell
  • Additionally, gitlab_main_user must have a sharding key, only to users table.

References

Screenshots or screen recordings

Before After

How to set up and validate locally

MR acceptance checklist

Evaluate this MR against the MR acceptance checklist. It helps you analyze changes to reduce risks in quality, performance, reliability, security, and maintainability.

Edited by Thong Kuah

Merge request reports

Loading