Resolve "Introduce rake task to bump IDs of cell-local tables"
What does this MR do and why?
For #421902 (closed):
This MR introduces a rake task
rake gitlab:db:cells:bump_cell_sequences\[number\]
that increments the ID sequence of all tables belonging to the gitlab_main_cell
schema.
We need this rake task so that we can bump the IDs of cell-local tables, across different cells so as to avoid collissions when these IDs are used to create associated records in the clusterwide tables.
We intend to use this only in local development environments, as described in gitlab-development-kit!3317 (merged)
Before:
gitlabhq_development=# select last_value from namespaces_id_seq;
last_value
------------
1005
(1 row)
gitlabhq_development=# select last_value from users_id_seq;
last_value
------------
1
(1 row)
After running rake task as:
rake gitlab:db:cells:bump_cell_sequences\[2000\]
gitlabhq_development=# select last_value from namespaces_id_seq;
last_value
------------
3006
(1 row)
gitlabhq_development=# select last_value from users_id_seq;
last_value
------------
1
(1 row)
/* users is not a cell-local table, so it's ID is not bumped. */
Screenshots or screen recordings
Screenshots are required for UI changes, and strongly recommended for all other merge requests.
Before | After |
---|---|
How to set up and validate locally
Numbered steps to set up and validate the change are strongly suggested.
MR acceptance checklist
This checklist encourages us to confirm any changes have been analyzed to reduce risks in quality, performance, reliability, security, and maintainability.
-
I have evaluated the MR acceptance checklist for this MR.
Related to #421902 (closed)