aboutsummaryrefslogtreecommitdiff
path: root/internal/database/migrations.go
diff options
context:
space:
mode:
authorGravatar Frédéric Guillot <f@miniflux.net> 2023-10-17 19:45:08 -0700
committerGravatar Frédéric Guillot <f@miniflux.net> 2023-10-17 20:18:49 -0700
commit5dc44453bad925750cf2dda1172df785f740c935 (patch)
treea5370cd2ad47a4af54873a95c9d83ebd21b10f25 /internal/database/migrations.go
parent6086899b282fb7211ddaee970457793689c9498c (diff)
downloadv2-5dc44453bad925750cf2dda1172df785f740c935.tar.gz
v2-5dc44453bad925750cf2dda1172df785f740c935.tar.zst
v2-5dc44453bad925750cf2dda1172df785f740c935.zip
Add indexes to improve performance
Diffstat (limited to 'internal/database/migrations.go')
-rw-r--r--internal/database/migrations.go16
1 files changed, 16 insertions, 0 deletions
diff --git a/internal/database/migrations.go b/internal/database/migrations.go
index bdd6f739..1b4f44dd 100644
--- a/internal/database/migrations.go
+++ b/internal/database/migrations.go
@@ -783,4 +783,20 @@ var migrations = []func(tx *sql.Tx) error{
_, err = tx.Exec(sql)
return err
},
+ func(tx *sql.Tx) (err error) {
+ sql := `
+ -- Speed up has_enclosure
+ CREATE INDEX enclosures_entry_id_idx ON enclosures(entry_id);
+
+ -- Speed up unread page
+ CREATE INDEX entries_user_status_published_idx ON entries(user_id, status, published_at);
+ CREATE INDEX entries_user_status_created_idx ON entries(user_id, status, created_at);
+ CREATE INDEX feeds_feed_id_hide_globally_idx ON feeds(id, hide_globally);
+
+ -- Speed up history page
+ CREATE INDEX entries_user_status_changed_published_idx ON entries(user_id, status, changed_at, published_at);
+ `
+ _, err = tx.Exec(sql)
+ return err
+ },
}