mirror of
https://github.com/immich-app/immich
synced 2025-11-14 17:36:12 +00:00
51 lines
1.7 KiB
TypeScript
51 lines
1.7 KiB
TypeScript
|
|
import { MigrationInterface, QueryRunner } from 'typeorm';
|
||
|
|
|
||
|
|
export class FixAssetAndUserCascadeConditions1741280328985 implements MigrationInterface {
|
||
|
|
name = 'FixAssetAndUserCascadeConditions1741280328985';
|
||
|
|
|
||
|
|
public async up(queryRunner: QueryRunner): Promise<void> {
|
||
|
|
await queryRunner.query(`
|
||
|
|
CREATE OR REPLACE TRIGGER assets_delete_audit
|
||
|
|
AFTER DELETE ON assets
|
||
|
|
REFERENCING OLD TABLE AS OLD
|
||
|
|
FOR EACH STATEMENT
|
||
|
|
WHEN (pg_trigger_depth() = 0)
|
||
|
|
EXECUTE FUNCTION assets_delete_audit();`);
|
||
|
|
await queryRunner.query(`
|
||
|
|
CREATE OR REPLACE TRIGGER users_delete_audit
|
||
|
|
AFTER DELETE ON users
|
||
|
|
REFERENCING OLD TABLE AS OLD
|
||
|
|
FOR EACH STATEMENT
|
||
|
|
WHEN (pg_trigger_depth() = 0)
|
||
|
|
EXECUTE FUNCTION users_delete_audit();`);
|
||
|
|
await queryRunner.query(`
|
||
|
|
CREATE OR REPLACE TRIGGER partners_delete_audit
|
||
|
|
AFTER DELETE ON partners
|
||
|
|
REFERENCING OLD TABLE AS OLD
|
||
|
|
FOR EACH STATEMENT
|
||
|
|
WHEN (pg_trigger_depth() = 0)
|
||
|
|
EXECUTE FUNCTION partners_delete_audit();`);
|
||
|
|
}
|
||
|
|
|
||
|
|
public async down(queryRunner: QueryRunner): Promise<void> {
|
||
|
|
await queryRunner.query(`
|
||
|
|
CREATE OR REPLACE TRIGGER assets_delete_audit
|
||
|
|
AFTER DELETE ON assets
|
||
|
|
REFERENCING OLD TABLE AS OLD
|
||
|
|
FOR EACH STATEMENT
|
||
|
|
EXECUTE FUNCTION assets_delete_audit();`);
|
||
|
|
await queryRunner.query(`
|
||
|
|
CREATE OR REPLACE TRIGGER users_delete_audit
|
||
|
|
AFTER DELETE ON users
|
||
|
|
REFERENCING OLD TABLE AS OLD
|
||
|
|
FOR EACH STATEMENT
|
||
|
|
EXECUTE FUNCTION users_delete_audit();`);
|
||
|
|
await queryRunner.query(`
|
||
|
|
CREATE OR REPLACE TRIGGER partners_delete_audit
|
||
|
|
AFTER DELETE ON partners
|
||
|
|
REFERENCING OLD TABLE AS OLD
|
||
|
|
FOR EACH STATEMENT
|
||
|
|
EXECUTE FUNCTION partners_delete_audit();`);
|
||
|
|
}
|
||
|
|
}
|