From 9cf08d912a1dd77dca44d81e5e5d7e7f74bfe602 Mon Sep 17 00:00:00 2001 From: Weiko Date: Fri, 2 Aug 2024 21:34:20 +0200 Subject: [PATCH] Fix migration search path (#6520) --- .../workspace-query-runner/workspace-query-runner.service.ts | 2 +- .../workspace-migration-runner.service.ts | 5 ++--- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/packages/twenty-server/src/engine/api/graphql/workspace-query-runner/workspace-query-runner.service.ts b/packages/twenty-server/src/engine/api/graphql/workspace-query-runner/workspace-query-runner.service.ts index bef145c1e..fc70c7c84 100644 --- a/packages/twenty-server/src/engine/api/graphql/workspace-query-runner/workspace-query-runner.service.ts +++ b/packages/twenty-server/src/engine/api/graphql/workspace-query-runner/workspace-query-runner.service.ts @@ -688,7 +688,7 @@ export class WorkspaceQueryRunnerService { return await workspaceDataSource?.transaction( async (transactionManager) => { await transactionManager.query(` - SET search_path TO ${this.workspaceDataSourceService.getSchemaName( + SET LOCAL search_path TO ${this.workspaceDataSourceService.getSchemaName( workspaceId, )}; `); diff --git a/packages/twenty-server/src/engine/workspace-manager/workspace-migration-runner/workspace-migration-runner.service.ts b/packages/twenty-server/src/engine/workspace-manager/workspace-migration-runner/workspace-migration-runner.service.ts index bd5a78ee1..00727eaba 100644 --- a/packages/twenty-server/src/engine/workspace-manager/workspace-migration-runner/workspace-migration-runner.service.ts +++ b/packages/twenty-server/src/engine/workspace-manager/workspace-migration-runner/workspace-migration-runner.service.ts @@ -74,12 +74,11 @@ export class WorkspaceMigrationRunnerService { await queryRunner.connect(); await queryRunner.startTransaction(); - // Reset search_path to force to postgres to prefix migrations in the correct schema due to postgres driver behavior - await queryRunner.query('SET search_path TO public'); - const schemaName = this.workspaceDataSourceService.getSchemaName(workspaceId); + await queryRunner.query(`SET LOCAL search_path TO ${schemaName}`); + try { // Loop over each migration and create or update the table for (const migration of flattenedPendingMigrations) {