diff --git a/sphinx/application/data/concepts/concept-coredb/src/main/sqldelight/chat/sphinx/concept_coredb/SphinxDatabase.sq b/sphinx/application/data/concepts/concept-coredb/src/main/sqldelight/chat/sphinx/concept_coredb/SphinxDatabase.sq index 1bc131d930..85ba2ee758 100644 --- a/sphinx/application/data/concepts/concept-coredb/src/main/sqldelight/chat/sphinx/concept_coredb/SphinxDatabase.sq +++ b/sphinx/application/data/concepts/concept-coredb/src/main/sqldelight/chat/sphinx/concept_coredb/SphinxDatabase.sq @@ -272,6 +272,11 @@ SET price_per_message = :price_per_message, pin_message = :pin_message WHERE id = ?; +CREATE INDEX idx_chat_id ON chatDbo(id); +CREATE INDEX idx_chat_type ON chatDbo(type); +CREATE INDEX idx_chat_latest_message_id ON chatDbo(latest_message_id); +CREATE INDEX idx_chat_name ON chatDbo(name); + CREATE TABLE contactDbo( id INTEGER AS ContactId NOT NULL PRIMARY KEY, route_hint TEXT AS LightningRouteHint, @@ -966,6 +971,14 @@ UPDATE messageMediaDbo SET local_file = NULL WHERE chat_id = ? AND id IN ?; +CREATE INDEX idx_message_chat_type_status ON messageDbo(chat_id, type, status); +CREATE INDEX idx_message_chat_type_reply_thread ON messageDbo(chat_id, type, reply_uuid, thread_uuid); +CREATE INDEX idx_message_uuid ON messageDbo(uuid); +CREATE INDEX idx_message_chat_date ON messageDbo(chat_id, date DESC); +CREATE INDEX idx_message_sender_chat_type ON messageDbo(sender, chat_id, type); +CREATE INDEX idx_message_id ON messageDbo(id); +CREATE INDEX idx_message_muid_original_muid ON messageDbo(muid, original_muid); + CREATE TABLE subscriptionDbo( id INTEGER AS SubscriptionId NOT NULL PRIMARY KEY, cron TEXT AS Cron NOT NULL, diff --git a/sphinx/application/data/concepts/concept-coredb/src/main/sqldelight/migrations/19.sqm b/sphinx/application/data/concepts/concept-coredb/src/main/sqldelight/migrations/19.sqm new file mode 100644 index 0000000000..dff37b8f8f --- /dev/null +++ b/sphinx/application/data/concepts/concept-coredb/src/main/sqldelight/migrations/19.sqm @@ -0,0 +1,13 @@ + +CREATE INDEX idx_message_chat_type_status ON messageDbo(chat_id, type, status); +CREATE INDEX idx_message_chat_type_reply_thread ON messageDbo(chat_id, type, reply_uuid, thread_uuid); +CREATE INDEX idx_message_uuid ON messageDbo(uuid); +CREATE INDEX idx_message_chat_date ON messageDbo(chat_id, date DESC); +CREATE INDEX idx_message_sender_chat_type ON messageDbo(sender, chat_id, type); +CREATE INDEX idx_message_id ON messageDbo(id); +CREATE INDEX idx_message_muid_original_muid ON messageDbo(muid, original_muid); + +CREATE INDEX idx_chat_id ON chatDbo(id); +CREATE INDEX idx_chat_type ON chatDbo(type); +CREATE INDEX idx_chat_latest_message_id ON chatDbo(latest_message_id); +CREATE INDEX idx_chat_name ON chatDbo(name);