added indexes on visibilities

This commit is contained in:
danielgrippi 2011-03-29 13:33:58 -07:00
parent 3615c448d2
commit 2f473cadc3
2 changed files with 11 additions and 6 deletions

View file

@ -40,8 +40,8 @@ SQL
post_id = row.last
execute <<SQL
DELETE FROM post_visibilities AS pv
WHERE pv.contact_id = #{contact_id} AND pv.post_id = #{post_id}
DELETE FROM post_visibilities
WHERE post_visibilities.contact_id = #{contact_id} AND post_visibilities.post_id = #{post_id}
LIMIT #{count-1}
SQL
end
@ -54,6 +54,8 @@ SQL
t.timestamps
end
add_index :aspect_visibilities, [:post_id, :aspect_id], :unique => true
add_index :aspect_visibilities, [:aspect_id]
add_index :aspect_visibilities, [:post_id]
add_foreign_key :aspect_visibilities, :aspects, :dependent => :delete
add_foreign_key :aspect_visibilities, :posts, :dependent => :delete
@ -62,12 +64,13 @@ SQL
move_author_pvs_to_aspect_pvs
set_pv_contact_ids
remove_index :post_visibilities, [:aspect_id, :post_id]
remove_column :post_visibilities, :aspect_id
delete_duplicate_pvs
remove_index :post_visibilities, [:aspect_id, :post_id]
remove_column :post_visibilities, :aspect_id
add_index :post_visibilities, [:contact_id, :post_id], :unique => true
add_index :post_visibilities, [:contact_id]
add_foreign_key :post_visibilities, :contacts, :dependent => :delete
add_foreign_key :post_visibilities, :posts, :dependent => :delete
end

View file

@ -30,8 +30,9 @@ ActiveRecord::Schema.define(:version => 20110328202414) do
t.datetime "updated_at"
end
add_index "aspect_visibilities", ["aspect_id"], :name => "aspect_visibilities_aspect_id_fk"
add_index "aspect_visibilities", ["aspect_id"], :name => "index_aspect_visibilities_on_aspect_id"
add_index "aspect_visibilities", ["post_id", "aspect_id"], :name => "index_aspect_visibilities_on_post_id_and_aspect_id", :unique => true
add_index "aspect_visibilities", ["post_id"], :name => "index_aspect_visibilities_on_post_id"
create_table "aspects", :force => true do |t|
t.string "name", :null => false
@ -215,6 +216,7 @@ ActiveRecord::Schema.define(:version => 20110328202414) do
end
add_index "post_visibilities", ["contact_id", "post_id"], :name => "index_post_visibilities_on_contact_id_and_post_id", :unique => true
add_index "post_visibilities", ["contact_id"], :name => "index_post_visibilities_on_contact_id"
add_index "post_visibilities", ["post_id"], :name => "index_post_visibilities_on_post_id"
create_table "posts", :force => true do |t|