Add NOT NULL constraint to operations_scopes
What does this MR do and why?
Adds NOT NULL constraint on sharding key column project_id on table: operations_scopes.
This merge request is the last step towards transforming the desired sharding key into a sharding key.
This involves the following changes:
- Adding a not null constraint for the sharding key columns (
project_id). - Setting
project_idassharding_keyofoperations_scopes.
We are skipping model-level validations when adding NOT NULL for now: !189213 (comment 2480466972)
The backfilling migrations were finished and finalized:
References
- !189213 (comment 2480466972)
- https://docs.gitlab.com/ee/development/database/multiple_databases.html#defining-a-sharding-key-for-all-cell-local-tables
- https://docs.gitlab.com/development/database/not_null_constraints/
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 Chen Zhang