Order unprocessed envelopes by receivedAtCounter

This commit is contained in:
Fedor Indutny 2022-06-10 09:09:21 -07:00 committed by GitHub
parent 924c271b13
commit 6aeddb9301
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
6 changed files with 50 additions and 14 deletions

View file

@ -3254,7 +3254,7 @@ async function getAllUnprocessedAndIncrementAttempts(): Promise<
`
SELECT *
FROM unprocessed
ORDER BY timestamp ASC;
ORDER BY receivedAtCounter ASC;
`
)
.all();

View file

@ -0,0 +1,28 @@
// Copyright 2022 Signal Messenger, LLC
// SPDX-License-Identifier: AGPL-3.0-only
import type { Database } from 'better-sqlite3';
import type { LoggerType } from '../../types/Logging';
export default function updateToSchemaVersion59(
currentVersion: number,
db: Database,
logger: LoggerType
): void {
if (currentVersion >= 59) {
return;
}
db.transaction(() => {
db.exec(
`
CREATE INDEX unprocessed_byReceivedAtCounter ON unprocessed
(receivedAtCounter)
`
);
db.pragma('user_version = 59');
})();
logger.info('updateToSchemaVersion59: success!');
}

View file

@ -5,12 +5,13 @@ import type { Database } from 'better-sqlite3';
import type { LoggerType } from '../../types/Logging';
export default function updateToSchemaVersion59(
// TODO: DESKTOP-3694
export default function updateToSchemaVersion60(
currentVersion: number,
db: Database,
logger: LoggerType
): void {
if (currentVersion >= 59) {
if (currentVersion >= 60) {
return;
}
@ -23,17 +24,17 @@ export default function updateToSchemaVersion59(
ON messages
(
conversationId,
storyId
storyId,
expirationStartTimestamp,
expireTimer,
received_at,
received_at
)
WHERE isStory IS 0 AND type IS 'incoming';
`
);
db.pragma('user_version = 59');
db.pragma('user_version = 60');
})();
logger.info('updateToSchemaVersion59: success!');
logger.info('updateToSchemaVersion60: success!');
}

View file

@ -34,6 +34,8 @@ import updateToSchemaVersion55 from './55-report-message-aci';
import updateToSchemaVersion56 from './56-add-unseen-to-message';
import updateToSchemaVersion57 from './57-rm-message-history-unsynced';
import updateToSchemaVersion58 from './58-update-unread';
import updateToSchemaVersion59 from './59-unprocessed-received-at-counter-index';
import updateToSchemaVersion60 from './60-update-expiring-index';
function updateToSchemaVersion1(
currentVersion: number,
@ -1931,6 +1933,8 @@ export const SCHEMA_VERSIONS = [
updateToSchemaVersion56,
updateToSchemaVersion57,
updateToSchemaVersion58,
updateToSchemaVersion59,
updateToSchemaVersion60,
];
export function updateSchema(db: Database, logger: LoggerType): void {