From 8b1dc1494ecb45fb63198f4724ea99ba4b1b8ffa Mon Sep 17 00:00:00 2001 From: Hongbo Wu Date: Mon, 20 May 2024 11:22:08 +0800 Subject: [PATCH] Drop multiple-column index for user_id and state columns in library_item table since we create a new index for count covers them --- .../db/migrations/0175.do.add_index_for_archived_at.sql | 7 ------- .../0175.do.add_index_for_library_item_count.sql | 7 +++++++ .../migrations/0175.undo.add_index_for_archived_at.sql | 9 --------- .../0175.undo.add_index_for_library_item_count.sql | 9 +++++++++ .../db/migrations/0176.do.drop_user_id_state_idx.sql | 9 +++++++++ .../db/migrations/0176.undo.drop_user_id_state_idx.sql | 7 +++++++ 6 files changed, 32 insertions(+), 16 deletions(-) delete mode 100755 packages/db/migrations/0175.do.add_index_for_archived_at.sql create mode 100755 packages/db/migrations/0175.do.add_index_for_library_item_count.sql delete mode 100755 packages/db/migrations/0175.undo.add_index_for_archived_at.sql create mode 100755 packages/db/migrations/0175.undo.add_index_for_library_item_count.sql create mode 100755 packages/db/migrations/0176.do.drop_user_id_state_idx.sql create mode 100755 packages/db/migrations/0176.undo.drop_user_id_state_idx.sql diff --git a/packages/db/migrations/0175.do.add_index_for_archived_at.sql b/packages/db/migrations/0175.do.add_index_for_archived_at.sql deleted file mode 100755 index 96b95e055..000000000 --- a/packages/db/migrations/0175.do.add_index_for_archived_at.sql +++ /dev/null @@ -1,7 +0,0 @@ --- Type: DO --- Name: add_index_for_archived_at --- Description: Add index for archived_at column in library_item table - -CREATE INDEX CONCURRENTLY - IF NOT EXISTS library_item_user_id_archived_at_idx - ON omnivore.library_item (user_id, archived_at DESC NULLS LAST); diff --git a/packages/db/migrations/0175.do.add_index_for_library_item_count.sql b/packages/db/migrations/0175.do.add_index_for_library_item_count.sql new file mode 100755 index 000000000..16ed3664f --- /dev/null +++ b/packages/db/migrations/0175.do.add_index_for_library_item_count.sql @@ -0,0 +1,7 @@ +-- Type: DO +-- Name: add_index_for_library_item_count +-- Description: Add index for counting user items in library_item table + +CREATE INDEX CONCURRENTLY + IF NOT EXISTS library_item_count_idx + ON omnivore.library_item (user_id, state, archived_at, folder); diff --git a/packages/db/migrations/0175.undo.add_index_for_archived_at.sql b/packages/db/migrations/0175.undo.add_index_for_archived_at.sql deleted file mode 100755 index 0f0b37aaf..000000000 --- a/packages/db/migrations/0175.undo.add_index_for_archived_at.sql +++ /dev/null @@ -1,9 +0,0 @@ --- Type: UNDO --- Name: add_index_for_archived_at --- Description: Add index for archived_at column in library_item table - -BEGIN; - -DROP INDEX IF EXISTS omnivore.library_item_user_id_archived_at_idx; - -COMMIT; diff --git a/packages/db/migrations/0175.undo.add_index_for_library_item_count.sql b/packages/db/migrations/0175.undo.add_index_for_library_item_count.sql new file mode 100755 index 000000000..f2cf91f4f --- /dev/null +++ b/packages/db/migrations/0175.undo.add_index_for_library_item_count.sql @@ -0,0 +1,9 @@ +-- Type: UNDO +-- Name: add_index_for_library_item_count +-- Description: Add index for counting user items in library_item table + +BEGIN; + +DROP INDEX IF EXISTS omnivore.library_item_count_idx; + +COMMIT; diff --git a/packages/db/migrations/0176.do.drop_user_id_state_idx.sql b/packages/db/migrations/0176.do.drop_user_id_state_idx.sql new file mode 100755 index 000000000..0ad10f11d --- /dev/null +++ b/packages/db/migrations/0176.do.drop_user_id_state_idx.sql @@ -0,0 +1,9 @@ +-- Type: DO +-- Name: drop_library_item_user_id_state_idx +-- Description: Drop multiple-column index for user_id and state columns in library_item table + +BEGIN; + +DROP INDEX IF EXISTS omnivore.library_item_user_id_state_idx; + +COMMIT; diff --git a/packages/db/migrations/0176.undo.drop_user_id_state_idx.sql b/packages/db/migrations/0176.undo.drop_user_id_state_idx.sql new file mode 100755 index 000000000..0fd27bb95 --- /dev/null +++ b/packages/db/migrations/0176.undo.drop_user_id_state_idx.sql @@ -0,0 +1,7 @@ +-- Type: UNDO +-- Name: drop_library_item_user_id_state_idx +-- Description: Drop multiple-column index for user_id and state columns in library_item table + +CREATE INDEX CONCURRENTLY + IF NOT EXISTS library_item_user_id_state_idx + ON omnivore.library_item (user_id, state);