diff --git a/keyserver/src/database/migration-config.js b/keyserver/src/database/migration-config.js --- a/keyserver/src/database/migration-config.js +++ b/keyserver/src/database/migration-config.js @@ -204,6 +204,22 @@ }, ], [18, updateRolesAndPermissionsForAllThreads], + [ + 19, + async () => { + await dbQuery( + SQL` + CREATE TABLE IF NOT EXISTS search ( + original_message_id bigint(20) NOT NULL, + message_id bigint(20) NOT NULL, + processed_content mediumtext COLLATE utf8mb4_bin, + FULLTEXT(processed_content), + PRIMARY KEY (original_message_id) + ) ENGINE=InnoDB DEFAULT CHARSET=utf8; + `, + ); + }, + ], ]); const newDatabaseVersion: number = Math.max(...migrations.keys()); diff --git a/keyserver/src/database/setup-db.js b/keyserver/src/database/setup-db.js --- a/keyserver/src/database/setup-db.js +++ b/keyserver/src/database/setup-db.js @@ -247,6 +247,13 @@ creation_time bigint(20) NOT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8; + CREATE TABLE search ( + original_message_id bigint(20) NOT NULL, + message_id bigint(20) NOT NULL, + processed_content mediumtext COLLATE utf8mb4_bin, + FULLTEXT(processed_content) + ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; + ALTER TABLE cookies ADD PRIMARY KEY (id), ADD UNIQUE KEY device_token (device_token(512)), @@ -363,6 +370,9 @@ ALTER TABLE siwe_nonces ADD PRIMARY KEY (nonce); + + ALTER TABLE search + ADD PRIMARY KEY (original_message_id); `, { multipleStatements: true }, );