From 6eb20722fce43e0d1c9050e3a7b943194cf5be0a Mon Sep 17 00:00:00 2001 From: spaced4ndy <8711996+spaced4ndy@users.noreply.github.com> Date: Tue, 6 Jan 2026 17:01:06 +0400 Subject: [PATCH] move relays migration --- simplex-chat.cabal | 4 ++-- src/Simplex/Chat/Store/Postgres/Migrations.hs | 4 ++-- ...0251212_chat_relays.hs => M20260106_chat_relays.hs} | 10 +++++----- src/Simplex/Chat/Store/SQLite/Migrations.hs | 4 ++-- ...0251212_chat_relays.hs => M20260106_chat_relays.hs} | 10 +++++----- .../Chat/Store/SQLite/Migrations/chat_query_plans.txt | 4 ++++ .../Chat/Store/SQLite/Migrations/chat_schema.sql | 2 +- 7 files changed, 21 insertions(+), 17 deletions(-) rename src/Simplex/Chat/Store/Postgres/Migrations/{M20251212_chat_relays.hs => M20260106_chat_relays.hs} (84%) rename src/Simplex/Chat/Store/SQLite/Migrations/{M20251212_chat_relays.hs => M20260106_chat_relays.hs} (84%) diff --git a/simplex-chat.cabal b/simplex-chat.cabal index b2541f612c..cd337f93cd 100644 --- a/simplex-chat.cabal +++ b/simplex-chat.cabal @@ -125,7 +125,7 @@ library Simplex.Chat.Store.Postgres.Migrations.M20251117_member_relations_vector Simplex.Chat.Store.Postgres.Migrations.M20251128_migrate_member_relations Simplex.Chat.Store.Postgres.Migrations.M20251230_strict_tables - Simplex.Chat.Store.Postgres.Migrations.M20251212_chat_relays + Simplex.Chat.Store.Postgres.Migrations.M20260106_chat_relays else exposed-modules: Simplex.Chat.Archive @@ -274,7 +274,7 @@ library Simplex.Chat.Store.SQLite.Migrations.M20251117_member_relations_vector Simplex.Chat.Store.SQLite.Migrations.M20251128_migrate_member_relations Simplex.Chat.Store.SQLite.Migrations.M20251230_strict_tables - Simplex.Chat.Store.SQLite.Migrations.M20251212_chat_relays + Simplex.Chat.Store.SQLite.Migrations.M20260106_chat_relays other-modules: Paths_simplex_chat hs-source-dirs: diff --git a/src/Simplex/Chat/Store/Postgres/Migrations.hs b/src/Simplex/Chat/Store/Postgres/Migrations.hs index 03f4190796..f74b95b7ef 100644 --- a/src/Simplex/Chat/Store/Postgres/Migrations.hs +++ b/src/Simplex/Chat/Store/Postgres/Migrations.hs @@ -24,7 +24,7 @@ import Simplex.Chat.Store.Postgres.Migrations.M20251017_chat_tags_cascade import Simplex.Chat.Store.Postgres.Migrations.M20251117_member_relations_vector import Simplex.Chat.Store.Postgres.Migrations.M20251128_migrate_member_relations import Simplex.Chat.Store.Postgres.Migrations.M20251230_strict_tables -import Simplex.Chat.Store.Postgres.Migrations.M20251212_chat_relays +import Simplex.Chat.Store.Postgres.Migrations.M20260106_chat_relays import Simplex.Messaging.Agent.Store.Shared (Migration (..)) schemaMigrations :: [(String, Text, Maybe Text)] @@ -49,7 +49,7 @@ schemaMigrations = ("20251117_member_relations_vector", m20251117_member_relations_vector, Just down_m20251117_member_relations_vector), ("20251128_migrate_member_relations", m20251128_migrate_member_relations, Just down_m20251128_migrate_member_relations), ("20251230_strict_tables", m20251230_strict_tables, Just down_m20251230_strict_tables), - ("20251212_chat_relays", m20251212_chat_relays, Just down_m20251212_chat_relays) + ("20260106_chat_relays", m20260106_chat_relays, Just down_m20260106_chat_relays) ] -- | The list of migrations in ascending order by date diff --git a/src/Simplex/Chat/Store/Postgres/Migrations/M20251212_chat_relays.hs b/src/Simplex/Chat/Store/Postgres/Migrations/M20260106_chat_relays.hs similarity index 84% rename from src/Simplex/Chat/Store/Postgres/Migrations/M20251212_chat_relays.hs rename to src/Simplex/Chat/Store/Postgres/Migrations/M20260106_chat_relays.hs index da2b808794..08e4f2beee 100644 --- a/src/Simplex/Chat/Store/Postgres/Migrations/M20251212_chat_relays.hs +++ b/src/Simplex/Chat/Store/Postgres/Migrations/M20260106_chat_relays.hs @@ -1,13 +1,13 @@ {-# LANGUAGE QuasiQuotes #-} -module Simplex.Chat.Store.Postgres.Migrations.M20251212_chat_relays where +module Simplex.Chat.Store.Postgres.Migrations.M20260106_chat_relays where import Data.Text (Text) import qualified Data.Text as T import Text.RawString.QQ (r) -m20251212_chat_relays :: Text -m20251212_chat_relays = +m20260106_chat_relays :: Text +m20260106_chat_relays = T.pack [r| CREATE TABLE chat_relays( @@ -32,8 +32,8 @@ ALTER TABLE users ADD COLUMN is_user_chat_relay SMALLINT NOT NULL DEFAULT 0; ALTER TABLE group_members ADD COLUMN is_chat_relay SMALLINT NOT NULL DEFAULT 0; |] -down_m20251212_chat_relays :: Text -down_m20251212_chat_relays = +down_m20260106_chat_relays :: Text +down_m20260106_chat_relays = T.pack [r| ALTER TABLE group_members DROP COLUMN is_chat_relay; diff --git a/src/Simplex/Chat/Store/SQLite/Migrations.hs b/src/Simplex/Chat/Store/SQLite/Migrations.hs index 684d47355d..1ef45e7892 100644 --- a/src/Simplex/Chat/Store/SQLite/Migrations.hs +++ b/src/Simplex/Chat/Store/SQLite/Migrations.hs @@ -147,7 +147,7 @@ import Simplex.Chat.Store.SQLite.Migrations.M20251017_chat_tags_cascade import Simplex.Chat.Store.SQLite.Migrations.M20251117_member_relations_vector import Simplex.Chat.Store.SQLite.Migrations.M20251128_migrate_member_relations import Simplex.Chat.Store.SQLite.Migrations.M20251230_strict_tables -import Simplex.Chat.Store.SQLite.Migrations.M20251212_chat_relays +import Simplex.Chat.Store.SQLite.Migrations.M20260106_chat_relays import Simplex.Messaging.Agent.Store.Shared (Migration (..)) schemaMigrations :: [(String, Query, Maybe Query)] @@ -295,7 +295,7 @@ schemaMigrations = ("20251117_member_relations_vector", m20251117_member_relations_vector, Just down_m20251117_member_relations_vector), ("20251128_migrate_member_relations", m20251128_migrate_member_relations, Just down_m20251128_migrate_member_relations), ("20251230_strict_tables", m20251230_strict_tables, Just down_m20251230_strict_tables), - ("20251212_chat_relays", m20251212_chat_relays, Just down_m20251212_chat_relays) + ("20260106_chat_relays", m20260106_chat_relays, Just down_m20260106_chat_relays) ] -- | The list of migrations in ascending order by date diff --git a/src/Simplex/Chat/Store/SQLite/Migrations/M20251212_chat_relays.hs b/src/Simplex/Chat/Store/SQLite/Migrations/M20260106_chat_relays.hs similarity index 84% rename from src/Simplex/Chat/Store/SQLite/Migrations/M20251212_chat_relays.hs rename to src/Simplex/Chat/Store/SQLite/Migrations/M20260106_chat_relays.hs index bc0241da45..6bd0f2632f 100644 --- a/src/Simplex/Chat/Store/SQLite/Migrations/M20251212_chat_relays.hs +++ b/src/Simplex/Chat/Store/SQLite/Migrations/M20260106_chat_relays.hs @@ -1,12 +1,12 @@ {-# LANGUAGE QuasiQuotes #-} -module Simplex.Chat.Store.SQLite.Migrations.M20251212_chat_relays where +module Simplex.Chat.Store.SQLite.Migrations.M20260106_chat_relays where import Database.SQLite.Simple (Query) import Database.SQLite.Simple.QQ (sql) -m20251212_chat_relays :: Query -m20251212_chat_relays = +m20260106_chat_relays :: Query +m20260106_chat_relays = [sql| CREATE TABLE chat_relays( chat_relay_id INTEGER PRIMARY KEY, @@ -30,8 +30,8 @@ ALTER TABLE users ADD COLUMN is_user_chat_relay INTEGER NOT NULL DEFAULT 0; ALTER TABLE group_members ADD COLUMN is_chat_relay INTEGER NOT NULL DEFAULT 0; |] -down_m20251212_chat_relays :: Query -down_m20251212_chat_relays = +down_m20260106_chat_relays :: Query +down_m20260106_chat_relays = [sql| ALTER TABLE group_members DROP COLUMN is_chat_relay; 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 a87d3507f7..e85dd19b95 100644 --- a/src/Simplex/Chat/Store/SQLite/Migrations/chat_query_plans.txt +++ b/src/Simplex/Chat/Store/SQLite/Migrations/chat_query_plans.txt @@ -5656,6 +5656,10 @@ SEARCH chat_items USING COVERING INDEX idx_chat_items_fwd_from_chat_item_id (fwd SEARCH files USING COVERING INDEX idx_files_chat_item_id (chat_item_id=?) SEARCH groups USING COVERING INDEX idx_groups_chat_item_id (chat_item_id=?) +Query: DELETE FROM chat_relays WHERE user_id = ? AND chat_relay_id = ? AND preset = ? +Plan: +SEARCH chat_relays USING INTEGER PRIMARY KEY (rowid=?) + Query: DELETE FROM commands WHERE user_id = ? AND command_id = ? Plan: SEARCH commands USING INTEGER PRIMARY KEY (rowid=?) diff --git a/src/Simplex/Chat/Store/SQLite/Migrations/chat_schema.sql b/src/Simplex/Chat/Store/SQLite/Migrations/chat_schema.sql index 32399a8c42..bb3a34e8cd 100644 --- a/src/Simplex/Chat/Store/SQLite/Migrations/chat_schema.sql +++ b/src/Simplex/Chat/Store/SQLite/Migrations/chat_schema.sql @@ -738,7 +738,7 @@ CREATE TABLE chat_relays( updated_at TEXT NOT NULL DEFAULT(datetime('now')), UNIQUE(user_id, address), UNIQUE(user_id, name) -) STRICT; +); CREATE INDEX contact_profiles_index ON contact_profiles( display_name, full_name