Skip to content

Commit

Permalink
Add a lot of missing indexes to database tables
Browse files Browse the repository at this point in the history
  • Loading branch information
Envek committed Oct 31, 2013
1 parent 6f4deb1 commit 9fff641
Show file tree
Hide file tree
Showing 4 changed files with 105 additions and 1 deletion.
1 change: 1 addition & 0 deletions Gemfile
Original file line number Diff line number Diff line change
Expand Up @@ -60,6 +60,7 @@ group :development do
gem 'better_errors'
gem 'binding_of_caller'
gem 'meta_request'
gem 'lol_dba'
end

gem 'rspec-rails', :group => [:development, :test]
Expand Down
5 changes: 5 additions & 0 deletions Gemfile.lock
Original file line number Diff line number Diff line change
Expand Up @@ -135,6 +135,10 @@ GEM
launchy (2.3.0)
addressable (~> 2.3)
libv8 (3.11.8.17)
lol_dba (1.6.0)
actionpack (>= 3.0)
activerecord (>= 3.0)
railties (>= 3.0)
mail (2.5.4)
mime-types (~> 1.16)
treetop (~> 1.4.8)
Expand Down Expand Up @@ -299,6 +303,7 @@ DEPENDENCIES
jquery-ui-themes
launchy
libv8 (~> 3.11.8)
lol_dba
mail
meta_request
mini_magick
Expand Down
43 changes: 43 additions & 0 deletions db/migrate/20131031061516_add_missing_indexes.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
class AddMissingIndexes < ActiveRecord::Migration
def change
add_index :buildings, :name
add_index :classrooms, :building_id
add_index :classrooms, :department_id
add_index :classrooms, :name
add_index :charge_cards_preferred_classrooms, [:classroom_id, :charge_card_id], unique: true, name: 'preferred_classrooms_main_index'
add_index :subgroups, :jet_id
add_index :subgroups, :pair_id
add_index :subgroups, [:jet_id, :pair_id], unique: true
add_index :groups, :speciality_id
add_index :groups, :forming_year
add_index :groups, :name, unique: true
add_index :pairs, :charge_card_id
add_index :pairs, :classroom_id
add_index :pairs, [:day_of_the_week, :pair_number, :week, :active_at, :expired_at], name: 'pair_validation_index'
add_index :teaching_places, :department_id
add_index :teaching_places, :lecturer_id
add_index :teaching_places, :position_id
add_index :teaching_places, [:department_id, :lecturer_id], unique: true, name: 'teaching_places_main_index'
add_index :charge_cards, :semester_id
add_index :charge_cards, :teaching_place_id
add_index :charge_cards, :assistant_id
add_index :charge_cards, :lesson_type_id
add_index :charge_cards, :editor_name
add_index :training_assignments, :lesson_type_id
add_index :training_assignments, :semester_id
add_index :disciplines, :department_id
add_index :disciplines, :name
add_index :departments_users, [:department_id, :user_id], unique: true, name: 'department_users_main_index'
add_index :faculties, :name
add_index :departments, :faculty_id
add_index :departments, :dept_head_id
add_index :departments, :gosinsp_code
add_index :jets, :charge_card_id
add_index :jets, :group_id
add_index :jets, [:charge_card_id, :group_id], name: 'jets_main_index'
add_index :specialities, :department_id
add_index :specialities, :code
add_index :specialities, :name
add_index :lecturers, :name
end
end
57 changes: 56 additions & 1 deletion db/schema.rb
Original file line number Diff line number Diff line change
Expand Up @@ -11,14 +11,16 @@
#
# It's strongly recommended to check this file into your version control system.

ActiveRecord::Schema.define(:version => 20131030162804) do
ActiveRecord::Schema.define(:version => 20131031061516) do

create_table "buildings", :force => true do |t|
t.string "name"
t.datetime "created_at"
t.datetime "updated_at"
end

add_index "buildings", ["name"], :name => "index_buildings_on_name"

create_table "charge_cards", :force => true do |t|
t.integer "teaching_place_id"
t.integer "lesson_type_id"
Expand All @@ -32,6 +34,12 @@
t.string "note"
end

add_index "charge_cards", ["assistant_id"], :name => "index_charge_cards_on_assistant_id"
add_index "charge_cards", ["editor_name"], :name => "index_charge_cards_on_editor_name"
add_index "charge_cards", ["lesson_type_id"], :name => "index_charge_cards_on_lesson_type_id"
add_index "charge_cards", ["semester_id"], :name => "index_charge_cards_on_semester_id"
add_index "charge_cards", ["teaching_place_id"], :name => "index_charge_cards_on_teaching_place_id"

create_table "charge_cards_disciplines", :force => true do |t|
t.integer "charge_card_id", :null => false
t.integer "discipline_id", :null => false
Expand All @@ -44,6 +52,8 @@
t.integer "classroom_id"
end

add_index "charge_cards_preferred_classrooms", ["classroom_id", "charge_card_id"], :name => "preferred_classrooms_main_index", :unique => true

create_table "classrooms", :force => true do |t|
t.integer "building_id"
t.integer "department_id"
Expand All @@ -56,6 +66,10 @@
t.hstore "properties"
end

add_index "classrooms", ["building_id"], :name => "index_classrooms_on_building_id"
add_index "classrooms", ["department_id"], :name => "index_classrooms_on_department_id"
add_index "classrooms", ["name"], :name => "index_classrooms_on_name"

create_table "departments", :force => true do |t|
t.integer "faculty_id"
t.string "name"
Expand All @@ -66,11 +80,17 @@
t.integer "dept_head_id"
end

add_index "departments", ["dept_head_id"], :name => "index_departments_on_dept_head_id"
add_index "departments", ["faculty_id"], :name => "index_departments_on_faculty_id"
add_index "departments", ["gosinsp_code"], :name => "index_departments_on_gosinsp_code"

create_table "departments_users", :id => false, :force => true do |t|
t.integer "department_id"
t.integer "user_id"
end

add_index "departments_users", ["department_id", "user_id"], :name => "department_users_main_index", :unique => true

create_table "disciplines", :force => true do |t|
t.integer "department_id"
t.string "short_name"
Expand All @@ -79,6 +99,9 @@
t.datetime "updated_at"
end

add_index "disciplines", ["department_id"], :name => "index_disciplines_on_department_id"
add_index "disciplines", ["name"], :name => "index_disciplines_on_name"

create_table "disciplines_in_assignments", :id => false, :force => true do |t|
t.integer "discipline_id"
t.integer "training_assignment_id"
Expand All @@ -93,6 +116,8 @@
t.datetime "updated_at"
end

add_index "faculties", ["name"], :name => "index_faculties_on_name"

create_table "faculties_users", :id => false, :force => true do |t|
t.integer "faculty_id", :null => false
t.integer "user_id", :null => false
Expand All @@ -109,6 +134,10 @@
t.integer "population"
end

add_index "groups", ["forming_year"], :name => "index_groups_on_forming_year"
add_index "groups", ["name"], :name => "index_groups_on_name", :unique => true
add_index "groups", ["speciality_id"], :name => "index_groups_on_speciality_id"

create_table "groups_in_assignments", :id => false, :force => true do |t|
t.integer "group_id"
t.integer "training_assignment_id"
Expand All @@ -124,13 +153,19 @@
t.integer "subgroups_quantity", :default => 0
end

add_index "jets", ["charge_card_id", "group_id"], :name => "jets_main_index"
add_index "jets", ["charge_card_id"], :name => "index_jets_on_charge_card_id"
add_index "jets", ["group_id"], :name => "index_jets_on_group_id"

create_table "lecturers", :force => true do |t|
t.string "name"
t.datetime "created_at"
t.datetime "updated_at"
t.text "whish"
end

add_index "lecturers", ["name"], :name => "index_lecturers_on_name"

create_table "lesson_types", :force => true do |t|
t.string "name"
t.datetime "created_at"
Expand All @@ -150,6 +185,10 @@
t.datetime "updated_at"
end

add_index "pairs", ["charge_card_id"], :name => "index_pairs_on_charge_card_id"
add_index "pairs", ["classroom_id"], :name => "index_pairs_on_classroom_id"
add_index "pairs", ["day_of_the_week", "pair_number", "week", "active_at", "expired_at"], :name => "pair_validation_index"

create_table "positions", :force => true do |t|
t.string "name"
t.string "short_name"
Expand Down Expand Up @@ -190,6 +229,10 @@
t.datetime "updated_at"
end

add_index "specialities", ["code"], :name => "index_specialities_on_code"
add_index "specialities", ["department_id"], :name => "index_specialities_on_department_id"
add_index "specialities", ["name"], :name => "index_specialities_on_name"

create_table "subgroups", :force => true do |t|
t.integer "jet_id"
t.integer "pair_id"
Expand All @@ -198,6 +241,10 @@
t.datetime "updated_at"
end

add_index "subgroups", ["jet_id", "pair_id"], :name => "index_subgroups_on_jet_id_and_pair_id", :unique => true
add_index "subgroups", ["jet_id"], :name => "index_subgroups_on_jet_id"
add_index "subgroups", ["pair_id"], :name => "index_subgroups_on_pair_id"

create_table "teaching_places", :force => true do |t|
t.integer "department_id"
t.integer "lecturer_id"
Expand All @@ -206,6 +253,11 @@
t.datetime "updated_at"
end

add_index "teaching_places", ["department_id", "lecturer_id"], :name => "teaching_places_main_index", :unique => true
add_index "teaching_places", ["department_id"], :name => "index_teaching_places_on_department_id"
add_index "teaching_places", ["lecturer_id"], :name => "index_teaching_places_on_lecturer_id"
add_index "teaching_places", ["position_id"], :name => "index_teaching_places_on_position_id"

create_table "teaching_plans", :force => true do |t|
t.integer "speciality_id", :null => false
t.integer "discipline_id", :null => false
Expand All @@ -231,6 +283,9 @@
t.datetime "updated_at", :null => false
end

add_index "training_assignments", ["lesson_type_id"], :name => "index_training_assignments_on_lesson_type_id"
add_index "training_assignments", ["semester_id"], :name => "index_training_assignments_on_semester_id"

create_table "users", :force => true do |t|
t.string "email", :default => "", :null => false
t.string "encrypted_password", :limit => 128, :default => "", :null => false
Expand Down

0 comments on commit 9fff641

Please sign in to comment.