From 1d197f2dc8786565e5b87821db618c7c2296549c Mon Sep 17 00:00:00 2001 From: Jordan Chalupka <9794216+jordan-chalupka@users.noreply.github.com> Date: Mon, 2 Jun 2025 06:11:30 -0400 Subject: [PATCH] skip metadata._typeorm_migrations if they don't exist (#12398) I am seeing an issue where this migrations fails because the `metadata._typeorm_migrations` table does not exist. ```pgsql copy _typeorm_migrations from metadata to core query failed: SELECT * FROM metadata._typeorm_migrations ORDER BY id ASC error: error: relation "metadata._typeorm_migrations" does not exist [Nest] 430 - 06/01/2025, 10:22:35 PM ERROR [CopyTypeormMigrationsCommand] Failed to copy migrations: relation "metadata._typeorm_migrations" does not exist [Nest] 430 - 06/01/2025, 10:22:35 PM ERROR [CopyTypeormMigrationsCommand] undefined [Nest] 430 - 06/01/2025, 10:22:35 PM ERROR [DatabaseMigrationService] Error running database migrations: [Nest] 430 - 06/01/2025, 10:22:35 PM ERROR [DatabaseMigrationService] QueryFailedError: relation "metadata._typeorm_migrations" does not exist [Nest] 430 - 06/01/2025, 10:22:35 PM ERROR [UpgradeCommand] Command failed [Nest] 430 - 06/01/2025, 10:22:35 PM ERROR [UpgradeCommand] undefined [Nest] 430 - 06/01/2025, 10:22:35 PM LOG [UpgradeCommand] Command completed! [Nest] 430 - 06/01/2025, 10:22:35 PM ERROR [QueryFailedError] relation "metadata._typeorm_migrations" does not exist ``` I _think_ this table is not meant to exist anymore - which means that anyone who is onboarding into the project will run into an issue unless we handle the case where the table doesn't exist. We need to handle both the existing case and the non existing case to support people who _do_ have metadata._typeorm_migrations` to migrate. --- .../0-53/0-53-copy-typeorm-migrations.command.ts | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/packages/twenty-server/src/database/commands/upgrade-version-command/0-53/0-53-copy-typeorm-migrations.command.ts b/packages/twenty-server/src/database/commands/upgrade-version-command/0-53/0-53-copy-typeorm-migrations.command.ts index cee434974..d2b387b03 100644 --- a/packages/twenty-server/src/database/commands/upgrade-version-command/0-53/0-53-copy-typeorm-migrations.command.ts +++ b/packages/twenty-server/src/database/commands/upgrade-version-command/0-53/0-53-copy-typeorm-migrations.command.ts @@ -38,6 +38,21 @@ export class CopyTypeormMigrationsCommand extends MigrationCommandRunner { await queryRunner.connect(); await queryRunner.startTransaction(); + // Check if metadata._typeorm_migrations table exists + const tableExists = await queryRunner.query( + `SELECT EXISTS ( + SELECT FROM information_schema.tables + WHERE table_schema = 'metadata' + AND table_name = '_typeorm_migrations' + )`, + ); + + if (!tableExists[0].exists) { + this.logger.log('metadata._typeorm_migrations table does not exist, skipping migration'); + await queryRunner.commitTransaction(); + return; + } + const metadataMigrations = await queryRunner.query( 'SELECT * FROM metadata._typeorm_migrations ORDER BY id ASC', );