From 41d4749670bd1008b7ef74591d513f2d906b6783 Mon Sep 17 00:00:00 2001 From: shaojunda Date: Fri, 18 Dec 2020 15:15:26 +0800 Subject: [PATCH] perf: add index on created_at_unixtimestamp --- app/models/daily_statistic.rb | 4 ++++ ..._index_on_created_at_unixtimestamp_to_daily_statistics.rb | 5 +++++ db/schema.rb | 3 ++- 3 files changed, 11 insertions(+), 1 deletion(-) create mode 100644 db/migrate/20201218065319_add_index_on_created_at_unixtimestamp_to_daily_statistics.rb diff --git a/app/models/daily_statistic.rb b/app/models/daily_statistic.rb index ffc5760d9..a3b2d6ea1 100644 --- a/app/models/daily_statistic.rb +++ b/app/models/daily_statistic.rb @@ -61,3 +61,7 @@ def liquidity # nodes_count :integer # locked_capacity :decimal(30, ) # +# Indexes +# +# index_daily_statistics_on_created_at_unixtimestamp (created_at_unixtimestamp) +# diff --git a/db/migrate/20201218065319_add_index_on_created_at_unixtimestamp_to_daily_statistics.rb b/db/migrate/20201218065319_add_index_on_created_at_unixtimestamp_to_daily_statistics.rb new file mode 100644 index 000000000..17fb782a3 --- /dev/null +++ b/db/migrate/20201218065319_add_index_on_created_at_unixtimestamp_to_daily_statistics.rb @@ -0,0 +1,5 @@ +class AddIndexOnCreatedAtUnixtimestampToDailyStatistics < ActiveRecord::Migration[6.0] + def change + add_index :daily_statistics, :created_at_unixtimestamp, order: { created_at_unixtimestamp: "DESC NULLS LAST" } + end +end diff --git a/db/schema.rb b/db/schema.rb index 48f0063d4..b772ea18a 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: 2020_10_29_140549) do +ActiveRecord::Schema.define(version: 2020_12_18_065319) do # These are extensions that must be enabled in order to support this database enable_extension "plpgsql" @@ -237,6 +237,7 @@ t.jsonb "nodes_distribution" t.integer "nodes_count" t.decimal "locked_capacity", precision: 30 + t.index ["created_at_unixtimestamp"], name: "index_daily_statistics_on_created_at_unixtimestamp", order: "DESC NULLS LAST" end create_table "dao_contracts", force: :cascade do |t|