Commit 8022628f7055afb39af71e90ee5d65313d65ebb7
1 parent
4c3cdfa4
Exists in
master
and in
4 other branches
Add more indexes (see #2159)
Showing
2 changed files
with
75 additions
and
1 deletions
Show diff stats
| @@ -0,0 +1,44 @@ | @@ -0,0 +1,44 @@ | ||
| 1 | +class AddMoreIndexes < ActiveRecord::Migration | ||
| 2 | + def change | ||
| 3 | + add_index :events, :created_at | ||
| 4 | + add_index :events, :target_id | ||
| 5 | + | ||
| 6 | + add_index :issues, :closed | ||
| 7 | + add_index :issues, :created_at | ||
| 8 | + add_index :issues, :title | ||
| 9 | + | ||
| 10 | + add_index :keys, :identifier | ||
| 11 | + # FIXME: MySQL can't index text columns | ||
| 12 | + #add_index :keys, :key | ||
| 13 | + add_index :keys, :project_id | ||
| 14 | + | ||
| 15 | + add_index :merge_requests, :closed | ||
| 16 | + add_index :merge_requests, :created_at | ||
| 17 | + add_index :merge_requests, :source_branch | ||
| 18 | + add_index :merge_requests, :target_branch | ||
| 19 | + add_index :merge_requests, :title | ||
| 20 | + | ||
| 21 | + add_index :milestones, :due_date | ||
| 22 | + add_index :milestones, :project_id | ||
| 23 | + | ||
| 24 | + add_index :namespaces, :name | ||
| 25 | + add_index :namespaces, :path | ||
| 26 | + add_index :namespaces, :type | ||
| 27 | + | ||
| 28 | + add_index :notes, :created_at | ||
| 29 | + | ||
| 30 | + add_index :snippets, :created_at | ||
| 31 | + add_index :snippets, :expires_at | ||
| 32 | + | ||
| 33 | + add_index :users, :admin | ||
| 34 | + add_index :users, :blocked | ||
| 35 | + add_index :users, :name | ||
| 36 | + add_index :users, :username | ||
| 37 | + | ||
| 38 | + add_index :users_projects, :project_access | ||
| 39 | + add_index :users_projects, :user_id | ||
| 40 | + | ||
| 41 | + add_index :wikis, :project_id | ||
| 42 | + add_index :wikis, :slug | ||
| 43 | + end | ||
| 44 | +end |
db/schema.rb
| @@ -11,7 +11,7 @@ | @@ -11,7 +11,7 @@ | ||
| 11 | # | 11 | # |
| 12 | # It's strongly recommended to check this file into your version control system. | 12 | # It's strongly recommended to check this file into your version control system. |
| 13 | 13 | ||
| 14 | -ActiveRecord::Schema.define(:version => 20121203160507) do | 14 | +ActiveRecord::Schema.define(:version => 20121205201726) do |
| 15 | 15 | ||
| 16 | create_table "events", :force => true do |t| | 16 | create_table "events", :force => true do |t| |
| 17 | t.string "target_type" | 17 | t.string "target_type" |
| @@ -27,7 +27,9 @@ ActiveRecord::Schema.define(:version => 20121203160507) do | @@ -27,7 +27,9 @@ ActiveRecord::Schema.define(:version => 20121203160507) do | ||
| 27 | 27 | ||
| 28 | add_index "events", ["action"], :name => "index_events_on_action" | 28 | add_index "events", ["action"], :name => "index_events_on_action" |
| 29 | add_index "events", ["author_id"], :name => "index_events_on_author_id" | 29 | add_index "events", ["author_id"], :name => "index_events_on_author_id" |
| 30 | + add_index "events", ["created_at"], :name => "index_events_on_created_at" | ||
| 30 | add_index "events", ["project_id"], :name => "index_events_on_project_id" | 31 | add_index "events", ["project_id"], :name => "index_events_on_project_id" |
| 32 | + add_index "events", ["target_id"], :name => "index_events_on_target_id" | ||
| 31 | add_index "events", ["target_type"], :name => "index_events_on_target_type" | 33 | add_index "events", ["target_type"], :name => "index_events_on_target_type" |
| 32 | 34 | ||
| 33 | create_table "issues", :force => true do |t| | 35 | create_table "issues", :force => true do |t| |
| @@ -46,8 +48,11 @@ ActiveRecord::Schema.define(:version => 20121203160507) do | @@ -46,8 +48,11 @@ ActiveRecord::Schema.define(:version => 20121203160507) do | ||
| 46 | 48 | ||
| 47 | add_index "issues", ["assignee_id"], :name => "index_issues_on_assignee_id" | 49 | add_index "issues", ["assignee_id"], :name => "index_issues_on_assignee_id" |
| 48 | add_index "issues", ["author_id"], :name => "index_issues_on_author_id" | 50 | add_index "issues", ["author_id"], :name => "index_issues_on_author_id" |
| 51 | + add_index "issues", ["closed"], :name => "index_issues_on_closed" | ||
| 52 | + add_index "issues", ["created_at"], :name => "index_issues_on_created_at" | ||
| 49 | add_index "issues", ["milestone_id"], :name => "index_issues_on_milestone_id" | 53 | add_index "issues", ["milestone_id"], :name => "index_issues_on_milestone_id" |
| 50 | add_index "issues", ["project_id"], :name => "index_issues_on_project_id" | 54 | add_index "issues", ["project_id"], :name => "index_issues_on_project_id" |
| 55 | + add_index "issues", ["title"], :name => "index_issues_on_title" | ||
| 51 | 56 | ||
| 52 | create_table "keys", :force => true do |t| | 57 | create_table "keys", :force => true do |t| |
| 53 | t.integer "user_id" | 58 | t.integer "user_id" |
| @@ -59,6 +64,8 @@ ActiveRecord::Schema.define(:version => 20121203160507) do | @@ -59,6 +64,8 @@ ActiveRecord::Schema.define(:version => 20121203160507) do | ||
| 59 | t.integer "project_id" | 64 | t.integer "project_id" |
| 60 | end | 65 | end |
| 61 | 66 | ||
| 67 | + add_index "keys", ["identifier"], :name => "index_keys_on_identifier" | ||
| 68 | + add_index "keys", ["project_id"], :name => "index_keys_on_project_id" | ||
| 62 | add_index "keys", ["user_id"], :name => "index_keys_on_user_id" | 69 | add_index "keys", ["user_id"], :name => "index_keys_on_user_id" |
| 63 | 70 | ||
| 64 | create_table "merge_requests", :force => true do |t| | 71 | create_table "merge_requests", :force => true do |t| |
| @@ -80,8 +87,13 @@ ActiveRecord::Schema.define(:version => 20121203160507) do | @@ -80,8 +87,13 @@ ActiveRecord::Schema.define(:version => 20121203160507) do | ||
| 80 | 87 | ||
| 81 | add_index "merge_requests", ["assignee_id"], :name => "index_merge_requests_on_assignee_id" | 88 | add_index "merge_requests", ["assignee_id"], :name => "index_merge_requests_on_assignee_id" |
| 82 | add_index "merge_requests", ["author_id"], :name => "index_merge_requests_on_author_id" | 89 | add_index "merge_requests", ["author_id"], :name => "index_merge_requests_on_author_id" |
| 90 | + add_index "merge_requests", ["closed"], :name => "index_merge_requests_on_closed" | ||
| 91 | + add_index "merge_requests", ["created_at"], :name => "index_merge_requests_on_created_at" | ||
| 83 | add_index "merge_requests", ["milestone_id"], :name => "index_merge_requests_on_milestone_id" | 92 | add_index "merge_requests", ["milestone_id"], :name => "index_merge_requests_on_milestone_id" |
| 84 | add_index "merge_requests", ["project_id"], :name => "index_merge_requests_on_project_id" | 93 | add_index "merge_requests", ["project_id"], :name => "index_merge_requests_on_project_id" |
| 94 | + add_index "merge_requests", ["source_branch"], :name => "index_merge_requests_on_source_branch" | ||
| 95 | + add_index "merge_requests", ["target_branch"], :name => "index_merge_requests_on_target_branch" | ||
| 96 | + add_index "merge_requests", ["title"], :name => "index_merge_requests_on_title" | ||
| 85 | 97 | ||
| 86 | create_table "milestones", :force => true do |t| | 98 | create_table "milestones", :force => true do |t| |
| 87 | t.string "title", :null => false | 99 | t.string "title", :null => false |
| @@ -93,6 +105,9 @@ ActiveRecord::Schema.define(:version => 20121203160507) do | @@ -93,6 +105,9 @@ ActiveRecord::Schema.define(:version => 20121203160507) do | ||
| 93 | t.datetime "updated_at", :null => false | 105 | t.datetime "updated_at", :null => false |
| 94 | end | 106 | end |
| 95 | 107 | ||
| 108 | + add_index "milestones", ["due_date"], :name => "index_milestones_on_due_date" | ||
| 109 | + add_index "milestones", ["project_id"], :name => "index_milestones_on_project_id" | ||
| 110 | + | ||
| 96 | create_table "namespaces", :force => true do |t| | 111 | create_table "namespaces", :force => true do |t| |
| 97 | t.string "name", :null => false | 112 | t.string "name", :null => false |
| 98 | t.string "path", :null => false | 113 | t.string "path", :null => false |
| @@ -102,7 +117,10 @@ ActiveRecord::Schema.define(:version => 20121203160507) do | @@ -102,7 +117,10 @@ ActiveRecord::Schema.define(:version => 20121203160507) do | ||
| 102 | t.string "type" | 117 | t.string "type" |
| 103 | end | 118 | end |
| 104 | 119 | ||
| 120 | + add_index "namespaces", ["name"], :name => "index_namespaces_on_name" | ||
| 105 | add_index "namespaces", ["owner_id"], :name => "index_namespaces_on_owner_id" | 121 | add_index "namespaces", ["owner_id"], :name => "index_namespaces_on_owner_id" |
| 122 | + add_index "namespaces", ["path"], :name => "index_namespaces_on_path" | ||
| 123 | + add_index "namespaces", ["type"], :name => "index_namespaces_on_type" | ||
| 106 | 124 | ||
| 107 | create_table "notes", :force => true do |t| | 125 | create_table "notes", :force => true do |t| |
| 108 | t.text "note" | 126 | t.text "note" |
| @@ -116,6 +134,7 @@ ActiveRecord::Schema.define(:version => 20121203160507) do | @@ -116,6 +134,7 @@ ActiveRecord::Schema.define(:version => 20121203160507) do | ||
| 116 | t.string "line_code" | 134 | t.string "line_code" |
| 117 | end | 135 | end |
| 118 | 136 | ||
| 137 | + add_index "notes", ["created_at"], :name => "index_notes_on_created_at" | ||
| 119 | add_index "notes", ["noteable_id"], :name => "index_notes_on_noteable_id" | 138 | add_index "notes", ["noteable_id"], :name => "index_notes_on_noteable_id" |
| 120 | add_index "notes", ["noteable_type"], :name => "index_notes_on_noteable_type" | 139 | add_index "notes", ["noteable_type"], :name => "index_notes_on_noteable_type" |
| 121 | add_index "notes", ["project_id"], :name => "index_notes_on_project_id" | 140 | add_index "notes", ["project_id"], :name => "index_notes_on_project_id" |
| @@ -170,6 +189,8 @@ ActiveRecord::Schema.define(:version => 20121203160507) do | @@ -170,6 +189,8 @@ ActiveRecord::Schema.define(:version => 20121203160507) do | ||
| 170 | t.datetime "expires_at" | 189 | t.datetime "expires_at" |
| 171 | end | 190 | end |
| 172 | 191 | ||
| 192 | + add_index "snippets", ["created_at"], :name => "index_snippets_on_created_at" | ||
| 193 | + add_index "snippets", ["expires_at"], :name => "index_snippets_on_expires_at" | ||
| 173 | add_index "snippets", ["project_id"], :name => "index_snippets_on_project_id" | 194 | add_index "snippets", ["project_id"], :name => "index_snippets_on_project_id" |
| 174 | 195 | ||
| 175 | create_table "taggings", :force => true do |t| | 196 | create_table "taggings", :force => true do |t| |
| @@ -220,9 +241,13 @@ ActiveRecord::Schema.define(:version => 20121203160507) do | @@ -220,9 +241,13 @@ ActiveRecord::Schema.define(:version => 20121203160507) do | ||
| 220 | t.string "username" | 241 | t.string "username" |
| 221 | end | 242 | end |
| 222 | 243 | ||
| 244 | + add_index "users", ["admin"], :name => "index_users_on_admin" | ||
| 245 | + add_index "users", ["blocked"], :name => "index_users_on_blocked" | ||
| 223 | add_index "users", ["email"], :name => "index_users_on_email", :unique => true | 246 | add_index "users", ["email"], :name => "index_users_on_email", :unique => true |
| 224 | add_index "users", ["extern_uid", "provider"], :name => "index_users_on_extern_uid_and_provider", :unique => true | 247 | add_index "users", ["extern_uid", "provider"], :name => "index_users_on_extern_uid_and_provider", :unique => true |
| 248 | + add_index "users", ["name"], :name => "index_users_on_name" | ||
| 225 | add_index "users", ["reset_password_token"], :name => "index_users_on_reset_password_token", :unique => true | 249 | add_index "users", ["reset_password_token"], :name => "index_users_on_reset_password_token", :unique => true |
| 250 | + add_index "users", ["username"], :name => "index_users_on_username" | ||
| 226 | 251 | ||
| 227 | create_table "users_projects", :force => true do |t| | 252 | create_table "users_projects", :force => true do |t| |
| 228 | t.integer "user_id", :null => false | 253 | t.integer "user_id", :null => false |
| @@ -232,7 +257,9 @@ ActiveRecord::Schema.define(:version => 20121203160507) do | @@ -232,7 +257,9 @@ ActiveRecord::Schema.define(:version => 20121203160507) do | ||
| 232 | t.integer "project_access", :default => 0, :null => false | 257 | t.integer "project_access", :default => 0, :null => false |
| 233 | end | 258 | end |
| 234 | 259 | ||
| 260 | + add_index "users_projects", ["project_access"], :name => "index_users_projects_on_project_access" | ||
| 235 | add_index "users_projects", ["project_id"], :name => "index_users_projects_on_project_id" | 261 | add_index "users_projects", ["project_id"], :name => "index_users_projects_on_project_id" |
| 262 | + add_index "users_projects", ["user_id"], :name => "index_users_projects_on_user_id" | ||
| 236 | 263 | ||
| 237 | create_table "web_hooks", :force => true do |t| | 264 | create_table "web_hooks", :force => true do |t| |
| 238 | t.string "url" | 265 | t.string "url" |
| @@ -253,4 +280,7 @@ ActiveRecord::Schema.define(:version => 20121203160507) do | @@ -253,4 +280,7 @@ ActiveRecord::Schema.define(:version => 20121203160507) do | ||
| 253 | t.integer "user_id" | 280 | t.integer "user_id" |
| 254 | end | 281 | end |
| 255 | 282 | ||
| 283 | + add_index "wikis", ["project_id"], :name => "index_wikis_on_project_id" | ||
| 284 | + add_index "wikis", ["slug"], :name => "index_wikis_on_slug" | ||
| 285 | + | ||
| 256 | end | 286 | end |