Merge pull request #312 from databasus/develop

FIX (backups): Improve cascade deletion of backups on storage removal x2
This commit is contained in:
Rostislav Dugin
2026-01-27 16:38:49 +03:00
committed by GitHub

View File

@@ -1,7 +1,6 @@
-- +goose Up
-- +goose StatementBegin
-- Fix backups -> storages relationship (change from RESTRICT to CASCADE)
ALTER TABLE backups
DROP CONSTRAINT fk_backups_storage_id;
@@ -11,7 +10,6 @@ ALTER TABLE backups
REFERENCES storages (id)
ON DELETE CASCADE;
-- Fix databases -> workspaces relationship (add CASCADE)
ALTER TABLE databases
DROP CONSTRAINT fk_databases_workspace_id;
@@ -21,12 +19,20 @@ ALTER TABLE databases
REFERENCES workspaces (id)
ON DELETE CASCADE;
ALTER TABLE backup_configs
DROP CONSTRAINT fk_backup_config_storage_id;
ALTER TABLE backup_configs
ADD CONSTRAINT fk_backup_config_storage_id
FOREIGN KEY (storage_id)
REFERENCES storages (id)
ON DELETE CASCADE;
-- +goose StatementEnd
-- +goose Down
-- +goose StatementBegin
-- Restore original backups -> storages relationship (RESTRICT)
ALTER TABLE backups
DROP CONSTRAINT fk_backups_storage_id;
@@ -36,7 +42,6 @@ ALTER TABLE backups
REFERENCES storages (id)
ON DELETE RESTRICT;
-- Restore original databases -> workspaces relationship (no CASCADE)
ALTER TABLE databases
DROP CONSTRAINT fk_databases_workspace_id;
@@ -45,4 +50,12 @@ ALTER TABLE databases
FOREIGN KEY (workspace_id)
REFERENCES workspaces (id);
ALTER TABLE backup_configs
DROP CONSTRAINT fk_backup_config_storage_id;
ALTER TABLE backup_configs
ADD CONSTRAINT fk_backup_config_storage_id
FOREIGN KEY (storage_id)
REFERENCES storages (id);
-- +goose StatementEnd