aboutsummaryrefslogtreecommitdiffstats
path: root/db
diff options
context:
space:
mode:
Diffstat (limited to 'db')
-rw-r--r--db/migrate/051_add_track_things_unique_indices.rb11
-rw-r--r--db/schema.rb6
2 files changed, 16 insertions, 1 deletions
diff --git a/db/migrate/051_add_track_things_unique_indices.rb b/db/migrate/051_add_track_things_unique_indices.rb
new file mode 100644
index 000000000..77bd3ce13
--- /dev/null
+++ b/db/migrate/051_add_track_things_unique_indices.rb
@@ -0,0 +1,11 @@
+class AddTrackThingsUniqueIndices < ActiveRecord::Migration
+ def self.up
+ add_index :track_things, [:tracking_user_id, :track_query], :unique => true
+ execute "create unique index track_things_sent_emails_unique_index on track_things_sent_emails(track_thing_id, coalesce(info_request_event_id, -1), coalesce(user_id, -1), coalesce(public_body_id, -1))"
+ end
+
+ def self.down
+ remove_index :track_things, [:tracking_user_id, :track_query]
+ execute "drop index track_things_sent_emails_unique_index"
+ end
+end
diff --git a/db/schema.rb b/db/schema.rb
index 33e01f82d..3a8433f47 100644
--- a/db/schema.rb
+++ b/db/schema.rb
@@ -9,7 +9,7 @@
#
# It's strongly recommended to check this file into your version control system.
-ActiveRecord::Schema.define(:version => 50) do
+ActiveRecord::Schema.define(:version => 51) do
create_table "incoming_messages", :force => true do |t|
t.integer "info_request_id", :null => false
@@ -129,6 +129,8 @@ ActiveRecord::Schema.define(:version => 50) do
t.datetime "updated_at"
end
+ add_index "track_things", ["tracking_user_id", "track_query"], :name => "index_track_things_on_tracking_user_id_and_track_query", :unique => true
+
create_table "track_things_sent_emails", :force => true do |t|
t.integer "track_thing_id", :null => false
t.integer "info_request_event_id"
@@ -138,6 +140,8 @@ ActiveRecord::Schema.define(:version => 50) do
t.datetime "updated_at"
end
+ add_index "track_things_sent_emails", ["track_thing_id"], :name => "track_things_sent_emails_unique_index", :unique => true
+
create_table "user_info_request_sent_alerts", :force => true do |t|
t.integer "user_id", :null => false
t.integer "info_request_id", :null => false