Skip to content

Commit

Permalink
Optimize removeKnownAttachments
Browse files Browse the repository at this point in the history
Co-authored-by: Fedor Indutny <79877362+indutny-signal@users.noreply.github.com>
  • Loading branch information
automated-signal and indutny-signal committed Oct 5, 2021
1 parent 631c1ff commit 8adea03
Showing 1 changed file with 27 additions and 27 deletions.
54 changes: 27 additions & 27 deletions ts/sql/Server.ts
Expand Up @@ -6182,7 +6182,7 @@ async function removeKnownAttachments(
const lookup: Dictionary<boolean> = fromPairs(
map(allAttachments, file => [file, true])
);
const chunkSize = 50;
const chunkSize = 500;

const total = await getMessageCount();
logger.info(
Expand All @@ -6193,20 +6193,20 @@ async function removeKnownAttachments(
let complete = false;
let id: string | number = '';

const fetchMessages = db.prepare<Query>(
`
SELECT json FROM messages
WHERE id > $id
ORDER BY id ASC
LIMIT $chunkSize;
`
);

while (!complete) {
const rows: JSONRows = db
.prepare<Query>(
`
SELECT json FROM messages
WHERE id > $id
ORDER BY id ASC
LIMIT $chunkSize;
`
)
.all({
id,
chunkSize,
});
const rows: JSONRows = fetchMessages.all({
id,
chunkSize,
});

const messages: Array<MessageType> = rows.map(row =>
jsonToObject(row.json)
Expand Down Expand Up @@ -6239,20 +6239,20 @@ async function removeKnownAttachments(
`removeKnownAttachments: About to iterate through ${conversationTotal} conversations`
);

const fetchConversations = db.prepare<Query>(
`
SELECT json FROM conversations
WHERE id > $id
ORDER BY id ASC
LIMIT $chunkSize;
`
);

while (!complete) {
const rows = db
.prepare<Query>(
`
SELECT json FROM conversations
WHERE id > $id
ORDER BY id ASC
LIMIT $chunkSize;
`
)
.all({
id,
chunkSize,
});
const rows = fetchConversations.all({
id,
chunkSize,
});

const conversations: Array<ConversationType> = map(rows, row =>
jsonToObject(row.json)
Expand Down

0 comments on commit 8adea03

Please sign in to comment.