From 7b97e3044988e41e65e8186f2dadf87e5837b101 Mon Sep 17 00:00:00 2001 From: Dmitriy Zaporozhets Date: Mon, 3 Dec 2012 18:11:47 +0200 Subject: [PATCH] More indices for asscociations. related to #2159 --- db/migrate/20121203160507_more_indices.rb | 26 +++++++++++++++++++++++ db/schema.rb | 22 ++++++++++++++++++- 2 files changed, 47 insertions(+), 1 deletion(-) create mode 100644 db/migrate/20121203160507_more_indices.rb diff --git a/db/migrate/20121203160507_more_indices.rb b/db/migrate/20121203160507_more_indices.rb new file mode 100644 index 00000000000..52170a7c597 --- /dev/null +++ b/db/migrate/20121203160507_more_indices.rb @@ -0,0 +1,26 @@ +class MoreIndices < ActiveRecord::Migration + def change + add_index :notes, :project_id + add_index :namespaces, :owner_id + add_index :keys, :user_id + + add_index :projects, :namespace_id + add_index :projects, :owner_id + + add_index :services, :project_id + add_index :snippets, :project_id + + add_index :users_projects, :project_id + + # Issues + add_index :issues, :assignee_id + add_index :issues, :milestone_id + add_index :issues, :author_id + + # Merge Requests + add_index :merge_requests, :assignee_id + add_index :merge_requests, :milestone_id + add_index :merge_requests, :author_id + + end +end diff --git a/db/schema.rb b/db/schema.rb index dca7b109df7..1abfcb46a26 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -11,7 +11,7 @@ # # It's strongly recommended to check this file into your version control system. -ActiveRecord::Schema.define(:version => 20121203154450) do +ActiveRecord::Schema.define(:version => 20121203160507) do create_table "events", :force => true do |t| t.string "target_type" @@ -44,6 +44,9 @@ ActiveRecord::Schema.define(:version => 20121203154450) do t.integer "milestone_id" end + add_index "issues", ["assignee_id"], :name => "index_issues_on_assignee_id" + add_index "issues", ["author_id"], :name => "index_issues_on_author_id" + add_index "issues", ["milestone_id"], :name => "index_issues_on_milestone_id" add_index "issues", ["project_id"], :name => "index_issues_on_project_id" create_table "keys", :force => true do |t| @@ -56,6 +59,8 @@ ActiveRecord::Schema.define(:version => 20121203154450) do t.integer "project_id" end + add_index "keys", ["user_id"], :name => "index_keys_on_user_id" + create_table "merge_requests", :force => true do |t| t.string "target_branch", :null => false t.string "source_branch", :null => false @@ -73,6 +78,9 @@ ActiveRecord::Schema.define(:version => 20121203154450) do t.integer "milestone_id" end + add_index "merge_requests", ["assignee_id"], :name => "index_merge_requests_on_assignee_id" + add_index "merge_requests", ["author_id"], :name => "index_merge_requests_on_author_id" + add_index "merge_requests", ["milestone_id"], :name => "index_merge_requests_on_milestone_id" add_index "merge_requests", ["project_id"], :name => "index_merge_requests_on_project_id" create_table "milestones", :force => true do |t| @@ -94,6 +102,8 @@ ActiveRecord::Schema.define(:version => 20121203154450) do t.string "type" end + add_index "namespaces", ["owner_id"], :name => "index_namespaces_on_owner_id" + create_table "notes", :force => true do |t| t.text "note" t.string "noteable_id" @@ -108,6 +118,7 @@ ActiveRecord::Schema.define(:version => 20121203154450) do add_index "notes", ["noteable_id"], :name => "index_notes_on_noteable_id" add_index "notes", ["noteable_type"], :name => "index_notes_on_noteable_type" + add_index "notes", ["project_id"], :name => "index_notes_on_project_id" create_table "projects", :force => true do |t| t.string "name" @@ -125,6 +136,9 @@ ActiveRecord::Schema.define(:version => 20121203154450) do t.integer "namespace_id" end + add_index "projects", ["namespace_id"], :name => "index_projects_on_namespace_id" + add_index "projects", ["owner_id"], :name => "index_projects_on_owner_id" + create_table "protected_branches", :force => true do |t| t.integer "project_id", :null => false t.string "name", :null => false @@ -143,6 +157,8 @@ ActiveRecord::Schema.define(:version => 20121203154450) do t.string "project_url" end + add_index "services", ["project_id"], :name => "index_services_on_project_id" + create_table "snippets", :force => true do |t| t.string "title" t.text "content" @@ -154,6 +170,8 @@ ActiveRecord::Schema.define(:version => 20121203154450) do t.datetime "expires_at" end + add_index "snippets", ["project_id"], :name => "index_snippets_on_project_id" + create_table "taggings", :force => true do |t| t.integer "tag_id" t.integer "taggable_id" @@ -214,6 +232,8 @@ ActiveRecord::Schema.define(:version => 20121203154450) do t.integer "project_access", :default => 0, :null => false end + add_index "users_projects", ["project_id"], :name => "index_users_projects_on_project_id" + create_table "web_hooks", :force => true do |t| t.string "url" t.integer "project_id"