Cells: Iteration 2: Introduce `gitlab_main_cell` gitlab schema
Problem
Introduce gitlab_main_cell
schema that inherits from gitlab_main
. Make code to:
- make the
gitlab_main_clusterwide
andgitlab_main_cell
to inherit all fromgitlab_main
- trigger violations (cross-join, cross-DB) only between
gitlab_main_clusterwide
andgitlab_main_cell
- do not trigger violations between
gitlab_main and gitlab_main_cell
orgitlab_main and gitlab_main_clusterwide
Purpose
- at some point none of tables use
gitlab_main
, onlygitlab_main_clusterwide
orgitlab_main_cell
- the
gitlab_main_cell
will usemain
database, and useApplicationRecord
model - the
gitlab_main_clusterwide
will continue usingMainClusterwide::ApplicationRecord
Addition
- It would help to find a very simple table that could be put into
gitlab_main_cell
that does not have any other joins to allow us to testgitlab_main_cell
. We would putnamespaces
later intogitlab_main_cell
, but this is too much at this moment.
References
- Draft: Cells: Move `users` and `namespaces` in ... (!108462 - closed) such is implemented in here
Edited by Kamil Trzciński