commit: 6f5c0afe93e28375c736437b9bb19b48a7c54a5f
parent: eec6095e0250d55b1d272b2fc8bf373f70cd1843
Author: takayamaki <fsgiko@gmail.com>
Date: Tue, 9 Jan 2018 23:00:19 +0900
add index on statuses for /api/v1/accounts/:account_id/statuses (#6202)
Diffstat:
2 files changed, 12 insertions(+), 2 deletions(-)
diff --git a/db/migrate/20180106000232_add_index_on_statuses_for_api_v1_accounts_account_id_statuses.rb b/db/migrate/20180106000232_add_index_on_statuses_for_api_v1_accounts_account_id_statuses.rb
@@ -0,0 +1,10 @@
+class AddIndexOnStatusesForApiV1AccountsAccountIdStatuses < ActiveRecord::Migration[5.1]
+ disable_ddl_transaction!
+
+ def change
+ safety_assured do
+ add_index :statuses, [:account_id, :id, :visibility, :updated_at], order: { id: :desc }, algorithm: :concurrently, name: :index_statuses_20180106
+ end
+ remove_index :statuses, name: :index_statuses_on_account_id_id
+ end
+end
diff --git 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: 20171226094803) do
+ActiveRecord::Schema.define(version: 20180106000232) do
# These are extensions that must be enabled in order to support this database
enable_extension "plpgsql"
@@ -409,7 +409,7 @@ ActiveRecord::Schema.define(version: 20171226094803) do
t.bigint "account_id", null: false
t.bigint "application_id"
t.bigint "in_reply_to_account_id"
- t.index ["account_id", "id"], name: "index_statuses_on_account_id_id"
+ t.index ["account_id", "id", "visibility", "updated_at"], name: "index_statuses_20180106", order: { id: :desc }
t.index ["conversation_id"], name: "index_statuses_on_conversation_id"
t.index ["in_reply_to_id"], name: "index_statuses_on_in_reply_to_id"
t.index ["reblog_of_id", "account_id"], name: "index_statuses_on_reblog_of_id_and_account_id"