mirror of
https://github.com/immich-app/immich.git
synced 2025-05-19 21:01:24 +02:00
fix: constraint migration to handle any existing pkey name (#18178)
This commit is contained in:
parent
b1e1362246
commit
cb6c541ae1
1 changed files with 10 additions and 2 deletions
|
@ -4,8 +4,16 @@ export async function up(db: Kysely<any>): Promise<void> {
|
|||
const { rows } = await sql<{ db: string }>`SELECT current_database() as db`.execute(db);
|
||||
const databaseName = rows[0].db;
|
||||
await sql.raw(`ALTER DATABASE "${databaseName}" SET search_path TO "$user", public, vectors`).execute(db);
|
||||
await sql`ALTER TABLE "naturalearth_countries" DROP CONSTRAINT IF EXISTS "PK_21a6d86d1ab5d841648212e5353";`.execute(db);
|
||||
await sql`ALTER TABLE "naturalearth_countries" DROP CONSTRAINT IF EXISTS "naturalearth_countries_pkey";`.execute(db);
|
||||
const naturalearth_pkey = await sql<{ constraint_name: string }>`SELECT constraint_name
|
||||
FROM information_schema.table_constraints
|
||||
WHERE table_schema = 'public'
|
||||
AND table_name = 'naturalearth_countries'
|
||||
AND constraint_type = 'PRIMARY KEY';`.execute(db);
|
||||
const naturalearth_pkey_name = naturalearth_pkey.rows[0]?.constraint_name;
|
||||
if(naturalearth_pkey_name) {
|
||||
await sql`ALTER TABLE "naturalearth_countries"
|
||||
DROP CONSTRAINT ${sql.ref(naturalearth_pkey_name)};`.execute(db);
|
||||
}
|
||||
await sql`ALTER TABLE "naturalearth_countries" ADD CONSTRAINT "naturalearth_countries_pkey" PRIMARY KEY ("id") WITH (FILLFACTOR = 100);`.execute(db);
|
||||
await sql`DROP INDEX IF EXISTS "IDX_02a43fd0b3c50fb6d7f0cb7282";`.execute(db);
|
||||
await sql`DROP INDEX IF EXISTS "IDX_95ad7106dd7b484275443f580f";`.execute(db);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue