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 | ... | ... |