sqlite: add msg type index to speed up cleaner

This commit is contained in:
Reto Brunner 2023-12-23 10:05:48 +01:00
parent b0ca8e51fb
commit edb1226b47

View file

@ -26,7 +26,7 @@ try {
type Migration = {version: number; stmts: string[]};
type Rollback = {version: number; rollback_forbidden?: boolean; stmts: string[]};
export const currentSchemaVersion = 1679743888000; // use `new Date().getTime()`
export const currentSchemaVersion = 1703322560448; // use `new Date().getTime()`
// Desired schema, adapt to the newest version and add migrations to the array below
const schema = [
@ -45,6 +45,7 @@ const schema = [
)`,
"CREATE INDEX network_channel ON messages (network, channel)",
"CREATE INDEX time ON messages (time)",
"CREATE INDEX msg_type_idx on messages (type)", // needed for efficient storageCleaner queries
];
// the migrations will be executed in an exclusive transaction as a whole
@ -78,6 +79,10 @@ export const migrations: Migration[] = [
)`,
],
},
{
version: 1703322560448,
stmts: ["CREATE INDEX msg_type_idx on messages (type)"],
},
];
// down migrations need to restore the state of the prior version.
@ -91,6 +96,10 @@ export const rollbacks: Rollback[] = [
version: 1679743888000,
stmts: [], // here we can't drop the tables, as we use them in the code, so just leave those in
},
{
version: 1703322560448,
stmts: ["drop INDEX msg_type_idx"],
},
];
class Deferred {