Updates model registry table docs with correct schema
What does this MR do and why?
Updates ml_ tables to be consistent with the cell guidelines.
Database
Note
This adds non-null constraints on post-migration. The columns have been non-null for a few milestones:
- ml_candidate_params and ml_candidate_metrics have always been not-null in the application, only the database didn't have a constraint
- project_id has been backfilled in Ml::Candidates, and it is a required attribute to generate internal_id !115971 (merged)
❯ rails db:migrate
main: == [advisory_lock_connection] object_id: 120120, pg_backend_pid: 22211
main: == 20240320100933 MakeProjectIdOnMlCandidateNonNullable: migrating ============
main: -- current_schema(nil)
main: -> 0.0011s
main: -- transaction_open?(nil)
main: -> 0.0000s
main: -- transaction_open?(nil)
main: -> 0.0000s
main: -- execute("ALTER TABLE ml_candidates\nADD CONSTRAINT check_01584ca6db\nCHECK ( project_id IS NOT NULL )\nNOT VALID;\n")
main: -> 0.0021s
main: -- execute("SET statement_timeout TO 0")
main: -> 0.0002s
main: -- execute("ALTER TABLE ml_candidates VALIDATE CONSTRAINT check_01584ca6db;")
main: -> 0.0015s
main: -- execute("RESET statement_timeout")
main: -> 0.0003s
main: == 20240320100933 MakeProjectIdOnMlCandidateNonNullable: migrated (0.0430s) ===
main: == [advisory_lock_connection] object_id: 120120, pg_backend_pid: 22211
ci: == [advisory_lock_connection] object_id: 120360, pg_backend_pid: 22213
ci: == 20240320100933 MakeProjectIdOnMlCandidateNonNullable: migrating ============
ci: -- current_schema(nil)
ci: -> 0.0004s
ci: -- transaction_open?(nil)
ci: -> 0.0000s
ci: -- transaction_open?(nil)
ci: -> 0.0000s
ci: -- execute("ALTER TABLE ml_candidates\nADD CONSTRAINT check_01584ca6db\nCHECK ( project_id IS NOT NULL )\nNOT VALID;\n")
ci: -> 0.0020s
ci: -- execute("SET statement_timeout TO 0")
ci: -> 0.0006s
ci: -- execute("ALTER TABLE ml_candidates VALIDATE CONSTRAINT check_01584ca6db;")
ci: -> 0.0008s
ci: -- execute("RESET statement_timeout")
ci: -> 0.0003s
ci: == 20240320100933 MakeProjectIdOnMlCandidateNonNullable: migrated (0.0258s) ===
ci: == [advisory_lock_connection] object_id: 120360, pg_backend_pid: 22213
main: == [advisory_lock_connection] object_id: 120580, pg_backend_pid: 22217
main: == 20240320101011 MakeCandidateIdOnMlCandidateParamsNonNullable: migrating ====
main: -- current_schema(nil)
main: -> 0.0004s
main: -- transaction_open?(nil)
main: -> 0.0000s
main: -- transaction_open?(nil)
main: -> 0.0000s
main: -- execute("ALTER TABLE ml_candidate_params\nADD CONSTRAINT check_7a0505ca91\nCHECK ( candidate_id IS NOT NULL )\nNOT VALID;\n")
main: -> 0.0007s
main: -- execute("SET statement_timeout TO 0")
main: -> 0.0002s
main: -- execute("ALTER TABLE ml_candidate_params VALIDATE CONSTRAINT check_7a0505ca91;")
main: -> 0.0005s
main: -- execute("RESET statement_timeout")
main: -> 0.0004s
main: == 20240320101011 MakeCandidateIdOnMlCandidateParamsNonNullable: migrated (0.0138s)
main: == [advisory_lock_connection] object_id: 120580, pg_backend_pid: 22217
ci: == [advisory_lock_connection] object_id: 120920, pg_backend_pid: 22219
ci: == 20240320101011 MakeCandidateIdOnMlCandidateParamsNonNullable: migrating ====
ci: -- current_schema(nil)
ci: -> 0.0004s
ci: -- transaction_open?(nil)
ci: -> 0.0000s
ci: -- transaction_open?(nil)
ci: -> 0.0000s
ci: -- execute("ALTER TABLE ml_candidate_params\nADD CONSTRAINT check_7a0505ca91\nCHECK ( candidate_id IS NOT NULL )\nNOT VALID;\n")
ci: -> 0.0007s
ci: -- execute("SET statement_timeout TO 0")
ci: -> 0.0003s
ci: -- execute("ALTER TABLE ml_candidate_params VALIDATE CONSTRAINT check_7a0505ca91;")
ci: -> 0.0008s
ci: -- execute("RESET statement_timeout")
ci: -> 0.0003s
ci: == 20240320101011 MakeCandidateIdOnMlCandidateParamsNonNullable: migrated (0.0243s)
ci: == [advisory_lock_connection] object_id: 120920, pg_backend_pid: 22219
main: == [advisory_lock_connection] object_id: 121140, pg_backend_pid: 22223
main: == 20240320101032 MakeCandidateIdOnMlCandidateMetricsNonNullable: migrating ===
main: -- current_schema(nil)
main: -> 0.0004s
main: -- transaction_open?(nil)
main: -> 0.0000s
main: -- transaction_open?(nil)
main: -> 0.0000s
main: -- execute("ALTER TABLE ml_candidate_metrics\nADD CONSTRAINT check_d7dfd3de26\nCHECK ( candidate_id IS NOT NULL )\nNOT VALID;\n")
main: -> 0.0006s
main: -- execute("SET statement_timeout TO 0")
main: -> 0.0003s
main: -- execute("ALTER TABLE ml_candidate_metrics VALIDATE CONSTRAINT check_d7dfd3de26;")
main: -> 0.0005s
main: -- execute("RESET statement_timeout")
main: -> 0.0002s
main: == 20240320101032 MakeCandidateIdOnMlCandidateMetricsNonNullable: migrated (0.0135s)
main: == [advisory_lock_connection] object_id: 121140, pg_backend_pid: 22223
ci: == [advisory_lock_connection] object_id: 126080, pg_backend_pid: 22226
ci: == 20240320101032 MakeCandidateIdOnMlCandidateMetricsNonNullable: migrating ===
ci: -- current_schema(nil)
ci: -> 0.0003s
ci: -- transaction_open?(nil)
ci: -> 0.0000s
ci: -- transaction_open?(nil)
ci: -> 0.0000s
ci: -- execute("ALTER TABLE ml_candidate_metrics\nADD CONSTRAINT check_d7dfd3de26\nCHECK ( candidate_id IS NOT NULL )\nNOT VALID;\n")
ci: -> 0.0005s
ci: -- execute("SET statement_timeout TO 0")
ci: -> 0.0002s
ci: -- execute("ALTER TABLE ml_candidate_metrics VALIDATE CONSTRAINT check_d7dfd3de26;")
ci: -> 0.0007s
ci: -- execute("RESET statement_timeout")
ci: -> 0.0003s
ci: == 20240320101032 MakeCandidateIdOnMlCandidateMetricsNonNullable: migrated (0.0195s)
ci: == [advisory_lock_connection] object_id: 126080, pg_backend_pid: 22226
Edited by Eduardo Bonet