Simplify database migrations

This commit is contained in:
Fedor Indutny 2025-08-06 10:32:08 -07:00 committed by GitHub
commit e6809c95db
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
106 changed files with 4661 additions and 6814 deletions

View file

@ -11,47 +11,30 @@ import { sql, sqlFragment } from '../util';
import { normalizePni } from '../../types/ServiceId';
import * as Errors from '../../types/errors';
export const version = 920;
export function updateToSchemaVersion920(
currentVersion: number,
export default function updateToSchemaVersion920(
db: Database,
logger: LoggerType
): void {
if (currentVersion >= 920) {
return;
}
db.transaction(() => {
cleanKeys(
db,
logger,
'updateToSchemaVersion920/kyberPreKeys',
sqlFragment`kyberPreKeys`,
sqlFragment`createdAt`,
sqlFragment`ourServiceId`
);
cleanKeys(
db,
logger,
'updateToSchemaVersion920/signedPreKeys',
sqlFragment`signedPreKeys`,
sqlFragment`created_at`,
sqlFragment`ourServiceId`
);
logger.info('updateToSchemaVersion920: Done with deletions');
db.pragma('user_version = 920');
})();
logger.info(
'updateToSchemaVersion920: user_version set to 920. Starting vacuum...'
): 'vacuum' {
cleanKeys(
db,
logger,
'kyberPreKeys',
sqlFragment`kyberPreKeys`,
sqlFragment`createdAt`,
sqlFragment`ourServiceId`
);
cleanKeys(
db,
logger,
'signedPreKeys',
sqlFragment`signedPreKeys`,
sqlFragment`created_at`,
sqlFragment`ourServiceId`
);
db.exec('VACUUM;');
logger.info('updateToSchemaVersion920: Vacuum complete.');
logger.info('updateToSchemaVersion920: success!');
logger.info('Done with deletions, starting vacuum...');
return 'vacuum';
}
export function cleanKeys(