about summary refs log tree commit diff
path: root/db
diff options
context:
space:
mode:
authoralpaca-tc <alpaca-tc@alpaca.tc>2017-05-08 02:00:20 +0900
committerEugen Rochko <eugen@zeonfederated.com>2017-05-07 19:00:20 +0200
commitd3704fdb09d79279c8dfde591087aa723af29891 (patch)
tree699f9f3296e8aee1778da69ace3ac1bc570ba1c9 /db
parentca05bfaac7894285bf9ebbfeebe8c379b94eeb42 (diff)
Add effective index to subscriptions (#2885)
Diffstat (limited to 'db')
-rw-r--r--db/migrate/20170507141759_optimize_index_subscriptions.rb11
-rw-r--r--db/schema.rb4
2 files changed, 13 insertions, 2 deletions
diff --git a/db/migrate/20170507141759_optimize_index_subscriptions.rb b/db/migrate/20170507141759_optimize_index_subscriptions.rb
new file mode 100644
index 000000000..26acd5c4d
--- /dev/null
+++ b/db/migrate/20170507141759_optimize_index_subscriptions.rb
@@ -0,0 +1,11 @@
+class OptimizeIndexSubscriptions < ActiveRecord::Migration[5.0]
+  def up
+    add_index :subscriptions, [:account_id, :callback_url], unique: true
+    remove_index :subscriptions, [:callback_url, :account_id]
+  end
+
+  def down
+    add_index :subscriptions, [:callback_url, :account_id], unique: true
+    remove_index :subscriptions, [:account_id, :callback_url]
+  end
+end
diff --git a/db/schema.rb b/db/schema.rb
index f6a13671c..21fce0df7 100644
--- a/db/schema.rb
+++ b/db/schema.rb
@@ -10,7 +10,7 @@
 #
 # It's strongly recommended that you check this file into your version control system.
 
-ActiveRecord::Schema.define(version: 20170425202925) do
+ActiveRecord::Schema.define(version: 20170507141759) do
 
   # These are extensions that must be enabled in order to support this database
   enable_extension "plpgsql"
@@ -288,7 +288,7 @@ ActiveRecord::Schema.define(version: 20170425202925) do
     t.datetime "created_at",                                  null: false
     t.datetime "updated_at",                                  null: false
     t.datetime "last_successful_delivery_at"
-    t.index ["callback_url", "account_id"], name: "index_subscriptions_on_callback_url_and_account_id", unique: true, using: :btree
+    t.index ["account_id", "callback_url"], name: "index_subscriptions_on_account_id_and_callback_url", unique: true, using: :btree
   end
 
   create_table "tags", force: :cascade do |t|