From 02ed40455f4b350ae372739725ee56d27a2780eb Mon Sep 17 00:00:00 2001 From: Audric Ackermann Date: Fri, 13 May 2022 11:30:57 +1000 Subject: [PATCH] fix: run the cleaning opengroup transaction on startup --- ts/node/sql.ts | 20 +++++++++++--------- ts/session/utils/Toast.tsx | 7 ++++++- 2 files changed, 17 insertions(+), 10 deletions(-) diff --git a/ts/node/sql.ts b/ts/node/sql.ts index cccede246..7ca85ba7e 100644 --- a/ts/node/sql.ts +++ b/ts/node/sql.ts @@ -3408,10 +3408,12 @@ function cleanUpMessagesJson() { function cleanUpOldOpengroups() { const ourNumber = getItemById('number_id'); if (!ourNumber || !ourNumber.value) { + console.info('cleanUpOldOpengroups: ourNumber is not set'); return; } const v2Convos = getAllOpenGroupV2Conversations(); if (!v2Convos || !v2Convos.length) { + console.info('cleanUpOldOpengroups: v2Convos is empty'); return; } // For each opengroups, if it has more than 1000 messages, we remove all the messages older than 2 months. @@ -3423,8 +3425,10 @@ function cleanUpOldOpengroups() { // first remove very old messages for each opengroups - assertGlobalInstance().transaction(() => { - dropFtsAndTriggers(assertGlobalInstance()); + const db = assertGlobalInstance(); + + db.transaction(() => { + dropFtsAndTriggers(db); v2Convos.forEach(convo => { const convoId = convo.id; const messagesInConvoBefore = getMessagesCountByConversation(convoId); @@ -3488,11 +3492,9 @@ function cleanUpOldOpengroups() { const chunks = chunk(allInactiveAndWithoutMessagesConvo, 500); chunks.forEach(ch => { - assertGlobalInstance() - .prepare( - `DELETE FROM ${CONVERSATIONS_TABLE} WHERE id IN (${ch.map(() => '?').join(',')});` - ) - .run(ch); + db.prepare( + `DELETE FROM ${CONVERSATIONS_TABLE} WHERE id IN (${ch.map(() => '?').join(',')});` + ).run(ch); }); console.info( @@ -3504,8 +3506,8 @@ function cleanUpOldOpengroups() { cleanUpMessagesJson(); - rebuildFtsTable(assertGlobalInstance()); - }); + rebuildFtsTable(db); + })(); } // tslint:disable: binary-expression-operand-order insecure-random diff --git a/ts/session/utils/Toast.tsx b/ts/session/utils/Toast.tsx index e2efc4b33..08d25af1b 100644 --- a/ts/session/utils/Toast.tsx +++ b/ts/session/utils/Toast.tsx @@ -217,7 +217,12 @@ export function someDeletionsFailed() { } export function pushDeleted(messageCount: number) { - pushToastSuccess('deleted', window.i18n('deleted', [messageCount.toString()]), undefined, 'check'); + pushToastSuccess( + 'deleted', + window.i18n('deleted', [messageCount.toString()]), + undefined, + 'check' + ); } export function pushCannotRemoveCreatorFromGroup() {