From 0b48e73d848e1a4cacf0cbef26497bc5e64752b6 Mon Sep 17 00:00:00 2001 From: Phil Hughes Date: Thu, 17 Jul 2025 14:18:46 +0100 Subject: [PATCH] Added index to merge request assignees user ID and merge request ID https://gitlab.com/gitlab-org/gitlab/-/issues/555533 --- ...st_assignees_user_id_and_merge_request_id.rb | 17 +++++++++++++++++ db/schema_migrations/20250717131454 | 1 + db/structure.sql | 2 ++ 3 files changed, 20 insertions(+) create mode 100644 db/post_migrate/20250717131454_add_index_to_merge_request_assignees_user_id_and_merge_request_id.rb create mode 100644 db/schema_migrations/20250717131454 diff --git a/db/post_migrate/20250717131454_add_index_to_merge_request_assignees_user_id_and_merge_request_id.rb b/db/post_migrate/20250717131454_add_index_to_merge_request_assignees_user_id_and_merge_request_id.rb new file mode 100644 index 00000000000000..677162d2df9fab --- /dev/null +++ b/db/post_migrate/20250717131454_add_index_to_merge_request_assignees_user_id_and_merge_request_id.rb @@ -0,0 +1,17 @@ +# frozen_string_literal: true + +class AddIndexToMergeRequestAssigneesUserIdAndMergeRequestId < Gitlab::Database::Migration[2.3] + disable_ddl_transaction! + + milestone '18.3' + + INDEX_NAME = 'index_merge_request_assignees_on_user_id_and_merge_request_id' + + def up + add_concurrent_index :merge_request_assignees, [:user_id, :merge_request_id], name: INDEX_NAME + end + + def down + remove_concurrent_index_by_name :merge_request_assignees, INDEX_NAME + end +end diff --git a/db/schema_migrations/20250717131454 b/db/schema_migrations/20250717131454 new file mode 100644 index 00000000000000..9620d0cb5f5c49 --- /dev/null +++ b/db/schema_migrations/20250717131454 @@ -0,0 +1 @@ +db888e55f012149aa300cb4f6fb80012d9d8e8a8ae925ff3bdfb4ce30bee5ba9 \ No newline at end of file diff --git a/db/structure.sql b/db/structure.sql index 5f75a44e60daa3..3fffaa4dd159ce 100644 --- a/db/structure.sql +++ b/db/structure.sql @@ -36508,6 +36508,8 @@ CREATE INDEX index_merge_request_assignees_on_project_id ON merge_request_assign CREATE INDEX index_merge_request_assignees_on_user_id ON merge_request_assignees USING btree (user_id); +CREATE INDEX index_merge_request_assignees_on_user_id_and_merge_request_id ON merge_request_assignees USING btree (user_id, merge_request_id); + CREATE INDEX index_merge_request_assignment_events_on_project_id ON merge_request_assignment_events USING btree (project_id); CREATE INDEX index_merge_request_assignment_events_on_user_id ON merge_request_assignment_events USING btree (user_id); -- GitLab