Skip to content

Database diagnostics page: Feedback issue

Summary

In GitLab 18.3, we added a Database diagnostics page in the Admin page attempt to flag common problems with the database:

MR links

  • Collation health check introduced in GitLab 18.3.
  • Schema health check introduced in GitLab 18.3.
    • Missing indexes, tables, foreign keys, and sequences check introduced in GitLab 18.3.
    • Wrong sequence owners check introduced in GitLab 18.4.

Known False Positives

Misnamed Indexes

GitLab 18.3 fixes many of these in !203313 (merged).

Old Name (Incorrect) New Name (Correct) Table Columns
p_ci_builds_metadata_build_id_convert_to_bigint_id_convert__idx p_ci_builds_metadata_build_id_id_idx p_ci_builds_metadata build_id
p_ci_builds_metadata_build_id_convert_to_bigint_idx p_ci_builds_metadata_build_id_idx p_ci_builds_metadata build_id
p_ci_pipelines_ci_ref_id_id_convert_to_bigint_idx p_ci_pipelines_ci_ref_id_id_idx p_ci_pipelines ci_ref_id, id
p_ci_pipelines_ci_ref_id_id_convert_to_bigint_source_status_idx p_ci_pipelines_ci_ref_id_id_source_status_idx p_ci_pipelines ci_ref_id, id, source, status
p_ci_pipelines_id_convert_to_bigint_idx p_ci_pipelines_id_idx p_ci_pipelines id
p_ci_pipelines_pipeline_schedule_id_id_convert_to_bigint_idx p_ci_pipelines_pipeline_schedule_id_id_idx p_ci_pipelines pipeline_schedule_id, id
p_ci_pipelines_project_id_id_convert_to_bigint_idx p_ci_pipelines_project_id_id_idx p_ci_pipelines project_id, id
p_ci_pipelines_project_id_ref_id_convert_to_bigint_idx p_ci_pipelines_project_id_ref_id_idx p_ci_pipelines project_id, ref, id
p_ci_pipelines_project_id_ref_status_id_convert_to_bigint_idx p_ci_pipelines_project_id_ref_status_id_idx p_ci_pipelines project_id, ref, status, id
p_ci_pipelines_status_id_convert_to_bigint_idx p_ci_pipelines_status_id_idx p_ci_pipelines status, id
p_ci_pipelines_user_id_id_convert_to_bigint_idx p_ci_pipelines_user_id_id_idx p_ci_pipelines user_id, id
p_ci_pipelines_user_id_id_convert_to_bigint_idx1 p_ci_pipelines_user_id_id_idx1 p_ci_pipelines user_id, id
p_ci_stages_pipeline_id_convert_to_bigint_id_idx p_ci_stages_pipeline_id_id_idx p_ci_stages pipeline_id, id
p_ci_stages_pipeline_id_convert_to_bigint_position_idx p_ci_stages_pipeline_id_position_idx p_ci_stages pipeline_id, position

Misnamed Foreign Keys

These will be fixed in GitLab 18.4 with !203323 (merged):

Old Name (Incorrect) New Name (Correct) Table Notes
fk_rails_2b18ae9256 fk_rails_1dfc868911 packages_tags Originally from packages_package_tags table
fk_rails_95a99c2d56 fk_rails_af3f8c5d62 pool_repositories Originally from repositories table
fk_03c671965c fk_rails_03c671965c design_management_designs_versions Missing fk_rails_ prefix
fk_f4d25ba00c fk_rails_f4d25ba00c design_management_designs_versions Missing fk_rails_ prefix
fk_a27c483435 fk_rails_a27c483435 todos Missing fk_rails_ prefix
fk_1e9a074a35 fk_rails_1e9a074a35 boards Missing fk_rails_ prefix
fk_43a9aa4ca8 fk_rails_43a9aa4ca8 remote_mirrors Missing fk_rails_ prefix
fk_61fbf6ca48 fk_rails_61fbf6ca48 events Missing fk_rails_ prefix
fk_d1aad367d7 fk_rails_d1aad367d7 project_mirror_data Missing fk_rails_ prefix
fk_08722e8ac7 fk_rails_08722e8ac7 security_policies Missing fk_rails_ prefix
fk_616ddd680a fk_rails_616ddd680a dependency_proxy_group_settings Missing fk_rails_ prefix
fk_a3c10bcf7d fk_rails_a3c10bcf7d jira_connect_subscriptions Missing fk_rails_ prefix
fk_db58bbc5d7 fk_rails_db58bbc5d7 dependency_proxy_blobs Missing fk_rails_ prefix
fk_e344cb2d35 fk_rails_e344cb2d35 approval_policy_rules Missing fk_rails_ prefix
fk_f1d617343f fk_rails_f1d617343f jira_connect_subscriptions Missing fk_rails_ prefix

Unneeded Sequences

This will dropped in GitLab 18.4 with !203299 (merged):

  1. project_incident_management_settings_project_id_seq
  2. user_statuses_user_id_seq

Summary

Common Patterns:

  • Indexes: Most had convert_to_bigint remnants from previous migration work
  • Foreign Keys: Most were missing the standard fk_rails_ prefix, while 2 had incorrect hash values due to original table name changes
Edited by 🤖 GitLab Bot 🤖