From fb9187ca03eacb1c83de6d78a2164dbc07989466 Mon Sep 17 00:00:00 2001 From: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com> Date: Fri, 3 Apr 2026 17:12:24 +0400 Subject: [PATCH] core: update query plans --- .../SQLite/Migrations/agent_query_plans.txt | 4 +-- .../SQLite/Migrations/chat_query_plans.txt | 29 ++++++++++--------- 2 files changed, 17 insertions(+), 16 deletions(-) diff --git a/src/Simplex/Chat/Store/SQLite/Migrations/agent_query_plans.txt b/src/Simplex/Chat/Store/SQLite/Migrations/agent_query_plans.txt index 1b881bd446..7a20f8e98f 100644 --- a/src/Simplex/Chat/Store/SQLite/Migrations/agent_query_plans.txt +++ b/src/Simplex/Chat/Store/SQLite/Migrations/agent_query_plans.txt @@ -894,7 +894,7 @@ Query: FROM rcv_queues q JOIN servers s ON q.host = s.host AND q.port = s.port JOIN connections c ON q.conn_id = c.conn_id - WHERE c.deleted = 0 AND q.deleted = 0 AND c.user_id = ? AND q.host = ? AND q.port = ? AND COALESCE(q.server_key_hash, s.key_hash) = ? + WHERE c.deleted = 0 AND q.deleted = 0 AND c.user_id = ? AND q.host = ? AND q.port = ? AND COALESCE(q.server_key_hash, s.key_hash) = ? ORDER BY q.rcv_id LIMIT ? Plan: SEARCH s USING PRIMARY KEY (host=? AND port=?) SEARCH q USING PRIMARY KEY (host=? AND port=?) @@ -906,7 +906,7 @@ Query: FROM rcv_queues q JOIN servers s ON q.host = s.host AND q.port = s.port JOIN connections c ON q.conn_id = c.conn_id - WHERE q.to_subscribe = 1 AND c.deleted = 0 AND q.deleted = 0 AND c.user_id = ? AND q.host = ? AND q.port = ? AND COALESCE(q.server_key_hash, s.key_hash) = ? + WHERE q.to_subscribe = 1 AND c.deleted = 0 AND q.deleted = 0 AND c.user_id = ? AND q.host = ? AND q.port = ? AND COALESCE(q.server_key_hash, s.key_hash) = ? ORDER BY q.rcv_id LIMIT ? Plan: SEARCH q USING INDEX idx_rcv_queues_to_subscribe (to_subscribe=? AND host=? AND port=?) SEARCH c USING PRIMARY KEY (conn_id=?) diff --git a/src/Simplex/Chat/Store/SQLite/Migrations/chat_query_plans.txt b/src/Simplex/Chat/Store/SQLite/Migrations/chat_query_plans.txt index 8061015156..c8fe194171 100644 --- a/src/Simplex/Chat/Store/SQLite/Migrations/chat_query_plans.txt +++ b/src/Simplex/Chat/Store/SQLite/Migrations/chat_query_plans.txt @@ -1128,8 +1128,8 @@ Plan: Query: INSERT INTO chat_relays - (address, name, domains, preset, tested, enabled, user_id, created_at, updated_at) - VALUES (?,?,?,?,?,?,?,?,?) + (address, display_name, full_name, short_descr, image, domains, preset, tested, enabled, user_id, created_at, updated_at) + VALUES (?,?,?,?,?,?,?,?,?,?,?,?) RETURNING chat_relay_id Plan: @@ -1661,7 +1661,7 @@ SEARCH chat_items USING INDEX idx_chat_items_group_scope_stats_all (user_id=? AN Query: UPDATE chat_relays - SET name = ?, domains = ?, + SET display_name = ?, full_name = ?, short_descr = ?, image = ?, domains = ?, preset = ?, tested = ?, enabled = ?, deleted = 0, updated_at = ? WHERE chat_relay_id = ? @@ -3470,7 +3470,7 @@ Plan: SEARCH chat_item_versions USING INDEX idx_chat_item_versions_chat_item_id (chat_item_id=?) Query: - SELECT chat_relay_id, address, name, domains, preset, tested, enabled + SELECT chat_relay_id, address, display_name, full_name, short_descr, image, domains, preset, tested, enabled FROM chat_relays WHERE user_id = ? AND chat_relay_id = ? AND deleted = 0 @@ -3478,12 +3478,12 @@ Plan: SEARCH chat_relays USING INTEGER PRIMARY KEY (rowid=?) Query: - SELECT chat_relay_id, address, name, domains, preset, tested, enabled + SELECT chat_relay_id, address, display_name, full_name, short_descr, image, domains, preset, tested, enabled FROM chat_relays WHERE user_id = ? AND deleted = 0 Plan: -SEARCH chat_relays USING INDEX idx_chat_relays_user_id (user_id=?) +SEARCH chat_relays USING INDEX idx_chat_relays_user_id_address (user_id=?) Query: SELECT chat_tag_id, chat_tag_emoji, chat_tag_text @@ -5595,14 +5595,15 @@ SEARCH f USING INDEX idx_files_chat_item_id (chat_item_id=?) Query: SELECT gr.group_relay_id, gr.group_member_id, - cr.chat_relay_id, cr.address, cr.name, cr.domains, cr.preset, cr.tested, cr.enabled, cr.deleted, + cr.chat_relay_id, cr.address, cr.display_name, cr.full_name, cr.short_descr, cr.image, cr.domains, cr.preset, cr.tested, cr.enabled, cr.deleted, gr.relay_status, gr.relay_link FROM group_relays gr JOIN chat_relays cr ON cr.chat_relay_id = gr.chat_relay_id - JOIN group_members m ON m.group_member_id = gr.group_member_id - WHERE gr.group_id = ? - AND m.member_status = ? - AND gr.relay_status IN (?,?) + + JOIN group_members m ON m.group_member_id = gr.group_member_id + WHERE gr.group_id = ? + AND m.member_status = ? + AND gr.relay_status IN (?,?) Plan: SEARCH gr USING INDEX idx_group_relays_group_id (group_id=?) @@ -5611,7 +5612,7 @@ SEARCH m USING INTEGER PRIMARY KEY (rowid=?) Query: SELECT gr.group_relay_id, gr.group_member_id, - cr.chat_relay_id, cr.address, cr.name, cr.domains, cr.preset, cr.tested, cr.enabled, cr.deleted, + cr.chat_relay_id, cr.address, cr.display_name, cr.full_name, cr.short_descr, cr.image, cr.domains, cr.preset, cr.tested, cr.enabled, cr.deleted, gr.relay_status, gr.relay_link FROM group_relays gr JOIN chat_relays cr ON cr.chat_relay_id = gr.chat_relay_id @@ -5622,7 +5623,7 @@ SEARCH cr USING INTEGER PRIMARY KEY (rowid=?) Query: SELECT gr.group_relay_id, gr.group_member_id, - cr.chat_relay_id, cr.address, cr.name, cr.domains, cr.preset, cr.tested, cr.enabled, cr.deleted, + cr.chat_relay_id, cr.address, cr.display_name, cr.full_name, cr.short_descr, cr.image, cr.domains, cr.preset, cr.tested, cr.enabled, cr.deleted, gr.relay_status, gr.relay_link FROM group_relays gr JOIN chat_relays cr ON cr.chat_relay_id = gr.chat_relay_id @@ -5633,7 +5634,7 @@ SEARCH cr USING INTEGER PRIMARY KEY (rowid=?) Query: SELECT gr.group_relay_id, gr.group_member_id, - cr.chat_relay_id, cr.address, cr.name, cr.domains, cr.preset, cr.tested, cr.enabled, cr.deleted, + cr.chat_relay_id, cr.address, cr.display_name, cr.full_name, cr.short_descr, cr.image, cr.domains, cr.preset, cr.tested, cr.enabled, cr.deleted, gr.relay_status, gr.relay_link FROM group_relays gr JOIN chat_relays cr ON cr.chat_relay_id = gr.chat_relay_id