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 @@ |
| 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 | 11 | # |
| 12 | 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 | 16 | create_table "events", :force => true do |t| |
| 17 | 17 | t.string "target_type" |
| ... | ... | @@ -27,7 +27,9 @@ ActiveRecord::Schema.define(:version => 20121203160507) do |
| 27 | 27 | |
| 28 | 28 | add_index "events", ["action"], :name => "index_events_on_action" |
| 29 | 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 | 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 | 33 | add_index "events", ["target_type"], :name => "index_events_on_target_type" |
| 32 | 34 | |
| 33 | 35 | create_table "issues", :force => true do |t| |
| ... | ... | @@ -46,8 +48,11 @@ ActiveRecord::Schema.define(:version => 20121203160507) do |
| 46 | 48 | |
| 47 | 49 | add_index "issues", ["assignee_id"], :name => "index_issues_on_assignee_id" |
| 48 | 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 | 53 | add_index "issues", ["milestone_id"], :name => "index_issues_on_milestone_id" |
| 50 | 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 | 57 | create_table "keys", :force => true do |t| |
| 53 | 58 | t.integer "user_id" |
| ... | ... | @@ -59,6 +64,8 @@ ActiveRecord::Schema.define(:version => 20121203160507) do |
| 59 | 64 | t.integer "project_id" |
| 60 | 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 | 69 | add_index "keys", ["user_id"], :name => "index_keys_on_user_id" |
| 63 | 70 | |
| 64 | 71 | create_table "merge_requests", :force => true do |t| |
| ... | ... | @@ -80,8 +87,13 @@ ActiveRecord::Schema.define(:version => 20121203160507) do |
| 80 | 87 | |
| 81 | 88 | add_index "merge_requests", ["assignee_id"], :name => "index_merge_requests_on_assignee_id" |
| 82 | 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 | 92 | add_index "merge_requests", ["milestone_id"], :name => "index_merge_requests_on_milestone_id" |
| 84 | 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 | 98 | create_table "milestones", :force => true do |t| |
| 87 | 99 | t.string "title", :null => false |
| ... | ... | @@ -93,6 +105,9 @@ ActiveRecord::Schema.define(:version => 20121203160507) do |
| 93 | 105 | t.datetime "updated_at", :null => false |
| 94 | 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 | 111 | create_table "namespaces", :force => true do |t| |
| 97 | 112 | t.string "name", :null => false |
| 98 | 113 | t.string "path", :null => false |
| ... | ... | @@ -102,7 +117,10 @@ ActiveRecord::Schema.define(:version => 20121203160507) do |
| 102 | 117 | t.string "type" |
| 103 | 118 | end |
| 104 | 119 | |
| 120 | + add_index "namespaces", ["name"], :name => "index_namespaces_on_name" | |
| 105 | 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 | 125 | create_table "notes", :force => true do |t| |
| 108 | 126 | t.text "note" |
| ... | ... | @@ -116,6 +134,7 @@ ActiveRecord::Schema.define(:version => 20121203160507) do |
| 116 | 134 | t.string "line_code" |
| 117 | 135 | end |
| 118 | 136 | |
| 137 | + add_index "notes", ["created_at"], :name => "index_notes_on_created_at" | |
| 119 | 138 | add_index "notes", ["noteable_id"], :name => "index_notes_on_noteable_id" |
| 120 | 139 | add_index "notes", ["noteable_type"], :name => "index_notes_on_noteable_type" |
| 121 | 140 | add_index "notes", ["project_id"], :name => "index_notes_on_project_id" |
| ... | ... | @@ -170,6 +189,8 @@ ActiveRecord::Schema.define(:version => 20121203160507) do |
| 170 | 189 | t.datetime "expires_at" |
| 171 | 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 | 194 | add_index "snippets", ["project_id"], :name => "index_snippets_on_project_id" |
| 174 | 195 | |
| 175 | 196 | create_table "taggings", :force => true do |t| |
| ... | ... | @@ -220,9 +241,13 @@ ActiveRecord::Schema.define(:version => 20121203160507) do |
| 220 | 241 | t.string "username" |
| 221 | 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 | 246 | add_index "users", ["email"], :name => "index_users_on_email", :unique => true |
| 224 | 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 | 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 | 252 | create_table "users_projects", :force => true do |t| |
| 228 | 253 | t.integer "user_id", :null => false |
| ... | ... | @@ -232,7 +257,9 @@ ActiveRecord::Schema.define(:version => 20121203160507) do |
| 232 | 257 | t.integer "project_access", :default => 0, :null => false |
| 233 | 258 | end |
| 234 | 259 | |
| 260 | + add_index "users_projects", ["project_access"], :name => "index_users_projects_on_project_access" | |
| 235 | 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 | 264 | create_table "web_hooks", :force => true do |t| |
| 238 | 265 | t.string "url" |
| ... | ... | @@ -253,4 +280,7 @@ ActiveRecord::Schema.define(:version => 20121203160507) do |
| 253 | 280 | t.integer "user_id" |
| 254 | 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 | 286 | end | ... | ... |