From 73ebacc40ae3ee70580413eaf9156370ad80c69b Mon Sep 17 00:00:00 2001 From: Chuck Driesler Date: Wed, 6 Aug 2025 19:03:05 +0100 Subject: [PATCH 1/2] fix(acc): drop automation foreign key constraint (#5191) --- .../20250806163108_drop_automation_id_fk.ts | 21 +++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 packages/server/modules/acc/migrations/20250806163108_drop_automation_id_fk.ts diff --git a/packages/server/modules/acc/migrations/20250806163108_drop_automation_id_fk.ts b/packages/server/modules/acc/migrations/20250806163108_drop_automation_id_fk.ts new file mode 100644 index 000000000..e36da148a --- /dev/null +++ b/packages/server/modules/acc/migrations/20250806163108_drop_automation_id_fk.ts @@ -0,0 +1,21 @@ +import type { Knex } from 'knex' + +const TABLE_NAME = 'acc_sync_items' + +export async function up(knex: Knex): Promise { + await knex.schema.alterTable(TABLE_NAME, (table) => { + table.dropForeign('automationId') + }) +} + +export async function down(knex: Knex): Promise { + await knex.schema.alterTable(TABLE_NAME, (table) => { + // Note: This will fail if any sync items have been created with `automationId` values that violate the constraint. + // Handle those before running this migration. + table + .foreign('automationId') + .references('id') + .inTable('automations') + .onDelete('cascade') + }) +} From 97544501246da67ce9b9a03469a7deef51b261d1 Mon Sep 17 00:00:00 2001 From: Chuck Driesler Date: Wed, 6 Aug 2025 19:38:35 +0100 Subject: [PATCH 2/2] fix(regions): return in project region move handler (#5190) * fix(regions): return in proejct region move handler * fix(regions): rollback in correct database --- packages/server/modules/multiregion/services/queue.ts | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/packages/server/modules/multiregion/services/queue.ts b/packages/server/modules/multiregion/services/queue.ts index 583eb6c61..c55b362bd 100644 --- a/packages/server/modules/multiregion/services/queue.ts +++ b/packages/server/modules/multiregion/services/queue.ts @@ -257,7 +257,7 @@ export const startQueue = async () => { // Wait for replication from regional db await waitForRegionProjectFactory({ getProject: getProjectFactory({ db }), - deleteProject: deleteProjectFactory({ db }) + deleteProject: deleteProjectFactory({ db: targetDb }) })({ projectId: project.id, regionKey, @@ -279,6 +279,8 @@ export const startQueue = async () => { })) }) } + + return } case 'delete-project-region-data': default: