Change the gitlab_schema of routes, and redirect_routes to be gitlab_main_cell.

gitlab_main_cluster used to refer to database tables that were supposed to be shared between Cells. With the current Cells architecture, this is not relevant anymore. And gitlab_main_cluster gitlab_schema refers to the tables that might contain some shared data between different cells, like users.

routes has been classified as gitlab_main_clusterwide. But it seems that this table won't contain any shared data between cells. When an organization is moved between cells, we should move its routes also between the cells.

Action items

  • Update routes to be gitlab_main_cell
  • Update redirect_routes to be gitlab_main_cell.
  • Add Sharding key to the above two tables. (#561339 (closed))

Other tables that might need reconsideration

  • organizations
  • organization_details
  • deploy_tokens. Currently classified as gitlab_main_cell but will most probably be changed to gitlab_main_clusterwide because it has a cluster unique attribute.

CC: @tkuah

Edited by Tomasz Skorupa