From 5d9aaefbca60de7386573706100cc014cba715d5 Mon Sep 17 00:00:00 2001 From: Kevin Aleman Date: Tue, 9 Nov 2021 09:34:05 -0600 Subject: [PATCH 1/5] add index on appId and associations for persistence table --- app/models/server/models/apps-persistence-model.js | 1 + 1 file changed, 1 insertion(+) diff --git a/app/models/server/models/apps-persistence-model.js b/app/models/server/models/apps-persistence-model.js index da178a390c327..122fb47ed5baf 100644 --- a/app/models/server/models/apps-persistence-model.js +++ b/app/models/server/models/apps-persistence-model.js @@ -5,6 +5,7 @@ export class AppsPersistenceModel extends Base { super('apps_persistence'); this.tryEnsureIndex({ appId: 1 }); + this.tryEnsureIndex({ appId: 1, associations: 1 }); } // Bypass trash collection From c669f89ffaba21a486427e73b32ce1188352a98a Mon Sep 17 00:00:00 2001 From: Kevin Aleman Date: Fri, 19 Nov 2021 10:07:18 -0600 Subject: [PATCH 2/5] remove old appId index --- app/models/server/models/apps-persistence-model.js | 1 - server/startup/migrations/index.ts | 1 + server/startup/migrations/v245.ts | 11 +++++++++++ 3 files changed, 12 insertions(+), 1 deletion(-) create mode 100644 server/startup/migrations/v245.ts diff --git a/app/models/server/models/apps-persistence-model.js b/app/models/server/models/apps-persistence-model.js index 122fb47ed5baf..dd01197abbc94 100644 --- a/app/models/server/models/apps-persistence-model.js +++ b/app/models/server/models/apps-persistence-model.js @@ -4,7 +4,6 @@ export class AppsPersistenceModel extends Base { constructor() { super('apps_persistence'); - this.tryEnsureIndex({ appId: 1 }); this.tryEnsureIndex({ appId: 1, associations: 1 }); } diff --git a/server/startup/migrations/index.ts b/server/startup/migrations/index.ts index dfeec238d17a9..ef9a9a912cd8c 100644 --- a/server/startup/migrations/index.ts +++ b/server/startup/migrations/index.ts @@ -68,4 +68,5 @@ import './v241'; import './v242'; import './v243'; import './v244'; +import './v245'; import './xrun'; diff --git a/server/startup/migrations/v245.ts b/server/startup/migrations/v245.ts new file mode 100644 index 0000000000000..9106ab2ca727d --- /dev/null +++ b/server/startup/migrations/v245.ts @@ -0,0 +1,11 @@ +import { addMigration } from '../../lib/migrations'; +import { Apps } from '../../../app/apps/server/orchestrator'; + +addMigration({ + version: 245, + up() { + // we now have a compound index on appId + associations + // so we can use the index prefix instead of a separate index on appId + return Apps._persistModel?.tryDropIndex({ appId: 1 }); + }, +}); From 414c4a1bd23dc0b1712b4cea28d4dfcffa3f21d9 Mon Sep 17 00:00:00 2001 From: Kevin Aleman Date: Mon, 22 Nov 2021 07:18:50 -0600 Subject: [PATCH 3/5] init app engine before using persist model --- server/startup/migrations/v245.ts | 1 + 1 file changed, 1 insertion(+) diff --git a/server/startup/migrations/v245.ts b/server/startup/migrations/v245.ts index 9106ab2ca727d..39ec2521a1e70 100644 --- a/server/startup/migrations/v245.ts +++ b/server/startup/migrations/v245.ts @@ -6,6 +6,7 @@ addMigration({ up() { // we now have a compound index on appId + associations // so we can use the index prefix instead of a separate index on appId + Apps.initialize(); return Apps._persistModel?.tryDropIndex({ appId: 1 }); }, }); From 9e8388416768fe5120b7a8f0529dc593803663a7 Mon Sep 17 00:00:00 2001 From: Kevin Aleman Date: Mon, 22 Nov 2021 10:36:09 -0600 Subject: [PATCH 4/5] new migration --- server/startup/migrations/index.ts | 1 + server/startup/migrations/v246.ts | 12 ++++++++++++ 2 files changed, 13 insertions(+) create mode 100644 server/startup/migrations/v246.ts diff --git a/server/startup/migrations/index.ts b/server/startup/migrations/index.ts index ef9a9a912cd8c..e8159aad4db8f 100644 --- a/server/startup/migrations/index.ts +++ b/server/startup/migrations/index.ts @@ -69,4 +69,5 @@ import './v242'; import './v243'; import './v244'; import './v245'; +import './v246'; import './xrun'; diff --git a/server/startup/migrations/v246.ts b/server/startup/migrations/v246.ts new file mode 100644 index 0000000000000..26fda7d7351c8 --- /dev/null +++ b/server/startup/migrations/v246.ts @@ -0,0 +1,12 @@ +import { addMigration } from '../../lib/migrations'; +import { Apps } from '../../../app/apps/server/orchestrator'; + +addMigration({ + version: 246, + up() { + // we now have a compound index on appId + associations + // so we can use the index prefix instead of a separate index on appId + Apps.initialize(); + return Apps._persistModel?.tryDropIndex({ appId: 1 }); + }, +}); From 97b8748e0dfa28c34c66e6a22992e70527fd1e34 Mon Sep 17 00:00:00 2001 From: Kevin Aleman Date: Mon, 22 Nov 2021 11:53:20 -0600 Subject: [PATCH 5/5] ouch --- server/startup/migrations/index.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/server/startup/migrations/index.ts b/server/startup/migrations/index.ts index dac9f0a9a3f44..319024966076c 100644 --- a/server/startup/migrations/index.ts +++ b/server/startup/migrations/index.ts @@ -69,6 +69,6 @@ import './v242'; import './v243'; import './v244'; import './v245'; - +import './v246'; import './v247'; import './xrun';