adjust indexes
This commit is contained in:
@@ -20,8 +20,8 @@
|
|||||||
#
|
#
|
||||||
# index_email_events_on_account_id_and_event_datetime (account_id,event_datetime)
|
# index_email_events_on_account_id_and_event_datetime (account_id,event_datetime)
|
||||||
# index_email_events_on_email (email)
|
# index_email_events_on_email (email)
|
||||||
|
# index_email_events_on_email_event_types (email) WHERE ((event_type)::text = ANY ((ARRAY['bounce'::character varying, 'soft_bounce'::character varying, 'complaint'::character varying, 'soft_complaint'::character varying])::text[]))
|
||||||
# index_email_events_on_emailable (emailable_type,emailable_id)
|
# index_email_events_on_emailable (emailable_type,emailable_id)
|
||||||
# index_email_events_on_event_type_and_email (event_type,email) WHERE ((event_type)::text = ANY ((ARRAY['bounce'::character varying, 'soft_bounce'::character varying, 'complaint'::character varying, 'soft_complaint'::character varying])::text[]))
|
|
||||||
# index_email_events_on_message_id (message_id)
|
# index_email_events_on_message_id (message_id)
|
||||||
#
|
#
|
||||||
# Foreign Keys
|
# Foreign Keys
|
||||||
|
|||||||
@@ -23,11 +23,12 @@
|
|||||||
#
|
#
|
||||||
# Indexes
|
# Indexes
|
||||||
#
|
#
|
||||||
# index_submissions_on_account_id_and_id (account_id,id)
|
# index_submissions_on_account_id_and_id (account_id,id)
|
||||||
# index_submissions_on_account_id_and_template_id_and_id (account_id,template_id,id) WHERE (archived_at IS NULL)
|
# index_submissions_on_account_id_and_template_id_and_id (account_id,template_id,id) WHERE (archived_at IS NULL)
|
||||||
# index_submissions_on_created_by_user_id (created_by_user_id)
|
# index_submissions_on_account_id_and_template_id_and_id_archived (account_id,template_id,id) WHERE (archived_at IS NOT NULL)
|
||||||
# index_submissions_on_slug (slug) UNIQUE
|
# index_submissions_on_created_by_user_id (created_by_user_id)
|
||||||
# index_submissions_on_template_id (template_id)
|
# index_submissions_on_slug (slug) UNIQUE
|
||||||
|
# index_submissions_on_template_id (template_id)
|
||||||
#
|
#
|
||||||
# Foreign Keys
|
# Foreign Keys
|
||||||
#
|
#
|
||||||
|
|||||||
@@ -25,6 +25,7 @@
|
|||||||
#
|
#
|
||||||
# index_templates_on_account_id (account_id)
|
# index_templates_on_account_id (account_id)
|
||||||
# index_templates_on_account_id_and_folder_id_and_id (account_id,folder_id,id) WHERE (archived_at IS NULL)
|
# index_templates_on_account_id_and_folder_id_and_id (account_id,folder_id,id) WHERE (archived_at IS NULL)
|
||||||
|
# index_templates_on_account_id_and_id_archived (account_id,id) WHERE (archived_at IS NOT NULL)
|
||||||
# index_templates_on_author_id (author_id)
|
# index_templates_on_author_id (author_id)
|
||||||
# index_templates_on_external_id (external_id)
|
# index_templates_on_external_id (external_id)
|
||||||
# index_templates_on_folder_id (folder_id)
|
# index_templates_on_folder_id (folder_id)
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
class AddEmailEventsEventTypeIndex < ActiveRecord::Migration[8.0]
|
class AddEmailEventsEventTypeIndex < ActiveRecord::Migration[8.0]
|
||||||
def change
|
def change
|
||||||
add_index :email_events, %i[event_type email],
|
add_index :email_events, :email, where: "event_type IN ('bounce', 'soft_bounce', 'complaint', 'soft_complaint')",
|
||||||
where: "event_type IN ('bounce', 'soft_bounce', 'complaint', 'soft_complaint')"
|
name: 'index_email_events_on_email_event_types'
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|||||||
@@ -3,5 +3,8 @@
|
|||||||
class AddSubmissionsTemplateIndex < ActiveRecord::Migration[8.0]
|
class AddSubmissionsTemplateIndex < ActiveRecord::Migration[8.0]
|
||||||
def change
|
def change
|
||||||
add_index :submissions, %i[account_id template_id id], where: 'archived_at IS NULL'
|
add_index :submissions, %i[account_id template_id id], where: 'archived_at IS NULL'
|
||||||
|
add_index :submissions, %i[account_id template_id id],
|
||||||
|
where: 'archived_at IS NOT NULL',
|
||||||
|
name: 'index_submissions_on_account_id_and_template_id_and_id_archived'
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|||||||
@@ -0,0 +1,8 @@
|
|||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
|
class AddArchivedTemplatesIndex < ActiveRecord::Migration[8.0]
|
||||||
|
def change
|
||||||
|
add_index :templates, %i[account_id id], where: 'archived_at IS NOT NULL',
|
||||||
|
name: 'index_templates_on_account_id_and_id_archived'
|
||||||
|
end
|
||||||
|
end
|
||||||
+4
-2
@@ -10,7 +10,7 @@
|
|||||||
#
|
#
|
||||||
# It's strongly recommended that you check this file into your version control system.
|
# It's strongly recommended that you check this file into your version control system.
|
||||||
|
|
||||||
ActiveRecord::Schema[8.0].define(version: 2025_06_17_075609) do
|
ActiveRecord::Schema[8.0].define(version: 2025_06_18_085322) do
|
||||||
# These are extensions that must be enabled in order to support this database
|
# These are extensions that must be enabled in order to support this database
|
||||||
enable_extension "btree_gin"
|
enable_extension "btree_gin"
|
||||||
enable_extension "plpgsql"
|
enable_extension "plpgsql"
|
||||||
@@ -177,8 +177,8 @@ ActiveRecord::Schema[8.0].define(version: 2025_06_17_075609) do
|
|||||||
t.datetime "created_at", null: false
|
t.datetime "created_at", null: false
|
||||||
t.index ["account_id", "event_datetime"], name: "index_email_events_on_account_id_and_event_datetime"
|
t.index ["account_id", "event_datetime"], name: "index_email_events_on_account_id_and_event_datetime"
|
||||||
t.index ["email"], name: "index_email_events_on_email"
|
t.index ["email"], name: "index_email_events_on_email"
|
||||||
|
t.index ["email"], name: "index_email_events_on_email_event_types", where: "((event_type)::text = ANY ((ARRAY['bounce'::character varying, 'soft_bounce'::character varying, 'complaint'::character varying, 'soft_complaint'::character varying])::text[]))"
|
||||||
t.index ["emailable_type", "emailable_id"], name: "index_email_events_on_emailable"
|
t.index ["emailable_type", "emailable_id"], name: "index_email_events_on_emailable"
|
||||||
t.index ["event_type", "email"], name: "index_email_events_on_event_type_and_email", where: "((event_type)::text = ANY ((ARRAY['bounce'::character varying, 'soft_bounce'::character varying, 'complaint'::character varying, 'soft_complaint'::character varying])::text[]))"
|
|
||||||
t.index ["message_id"], name: "index_email_events_on_message_id"
|
t.index ["message_id"], name: "index_email_events_on_message_id"
|
||||||
end
|
end
|
||||||
|
|
||||||
@@ -306,6 +306,7 @@ ActiveRecord::Schema[8.0].define(version: 2025_06_17_075609) do
|
|||||||
t.text "name"
|
t.text "name"
|
||||||
t.index ["account_id", "id"], name: "index_submissions_on_account_id_and_id"
|
t.index ["account_id", "id"], name: "index_submissions_on_account_id_and_id"
|
||||||
t.index ["account_id", "template_id", "id"], name: "index_submissions_on_account_id_and_template_id_and_id", where: "(archived_at IS NULL)"
|
t.index ["account_id", "template_id", "id"], name: "index_submissions_on_account_id_and_template_id_and_id", where: "(archived_at IS NULL)"
|
||||||
|
t.index ["account_id", "template_id", "id"], name: "index_submissions_on_account_id_and_template_id_and_id_archived", where: "(archived_at IS NOT NULL)"
|
||||||
t.index ["created_by_user_id"], name: "index_submissions_on_created_by_user_id"
|
t.index ["created_by_user_id"], name: "index_submissions_on_created_by_user_id"
|
||||||
t.index ["slug"], name: "index_submissions_on_slug", unique: true
|
t.index ["slug"], name: "index_submissions_on_slug", unique: true
|
||||||
t.index ["template_id"], name: "index_submissions_on_template_id"
|
t.index ["template_id"], name: "index_submissions_on_template_id"
|
||||||
@@ -386,6 +387,7 @@ ActiveRecord::Schema[8.0].define(version: 2025_06_17_075609) do
|
|||||||
t.text "preferences", null: false
|
t.text "preferences", null: false
|
||||||
t.boolean "shared_link", default: false, null: false
|
t.boolean "shared_link", default: false, null: false
|
||||||
t.index ["account_id", "folder_id", "id"], name: "index_templates_on_account_id_and_folder_id_and_id", where: "(archived_at IS NULL)"
|
t.index ["account_id", "folder_id", "id"], name: "index_templates_on_account_id_and_folder_id_and_id", where: "(archived_at IS NULL)"
|
||||||
|
t.index ["account_id", "id"], name: "index_templates_on_account_id_and_id_archived", where: "(archived_at IS NOT NULL)"
|
||||||
t.index ["account_id"], name: "index_templates_on_account_id"
|
t.index ["account_id"], name: "index_templates_on_account_id"
|
||||||
t.index ["author_id"], name: "index_templates_on_author_id"
|
t.index ["author_id"], name: "index_templates_on_author_id"
|
||||||
t.index ["external_id"], name: "index_templates_on_external_id"
|
t.index ["external_id"], name: "index_templates_on_external_id"
|
||||||
|
|||||||
Reference in New Issue
Block a user