From 1959365c2f410aa82874c5c05ab92c4eca4c4055 Mon Sep 17 00:00:00 2001 From: Claire Date: Fri, 10 May 2024 22:00:25 +0200 Subject: [PATCH] Add missing `on_delete: :cascade` on `notification_policies` (#30251) --- ...3_fix_notification_policies_foreign_key.rb | 28 +++++++++++++++++++ db/schema.rb | 4 +-- 2 files changed, 30 insertions(+), 2 deletions(-) create mode 100644 db/migrate/20240510192043_fix_notification_policies_foreign_key.rb diff --git a/db/migrate/20240510192043_fix_notification_policies_foreign_key.rb b/db/migrate/20240510192043_fix_notification_policies_foreign_key.rb new file mode 100644 index 000000000..7bb134ecf --- /dev/null +++ b/db/migrate/20240510192043_fix_notification_policies_foreign_key.rb @@ -0,0 +1,28 @@ +# frozen_string_literal: true + +class FixNotificationPoliciesForeignKey < ActiveRecord::Migration[7.1] + def up + safety_assured do + execute <<~SQL.squish + ALTER TABLE notification_policies + DROP CONSTRAINT fk_rails_506d62f0da, + ADD CONSTRAINT fk_rails_506d62f0da + FOREIGN KEY (account_id) + REFERENCES accounts(id) + ON DELETE CASCADE + SQL + end + end + + def down + safety_assured do + execute <<~SQL.squish + ALTER TABLE notification_policies + DROP CONSTRAINT fk_rails_506d62f0da, + ADD CONSTRAINT fk_rails_506d62f0da + FOREIGN KEY (account_id) + REFERENCES accounts(id) + SQL + end + end +end diff --git a/db/schema.rb b/db/schema.rb index 11f1a202f..ad5860492 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -10,7 +10,7 @@ # # It's strongly recommended that you check this file into your version control system. -ActiveRecord::Schema[7.1].define(version: 2024_03_22_161611) do +ActiveRecord::Schema[7.1].define(version: 2024_05_10_192043) do # These are extensions that must be enabled in order to support this database enable_extension "plpgsql" @@ -1335,7 +1335,7 @@ ActiveRecord::Schema[7.1].define(version: 2024_03_22_161611) do add_foreign_key "mutes", "accounts", name: "fk_b8d8daf315", on_delete: :cascade add_foreign_key "notification_permissions", "accounts" add_foreign_key "notification_permissions", "accounts", column: "from_account_id" - add_foreign_key "notification_policies", "accounts" + add_foreign_key "notification_policies", "accounts", on_delete: :cascade add_foreign_key "notification_requests", "accounts", column: "from_account_id", on_delete: :cascade add_foreign_key "notification_requests", "accounts", on_delete: :cascade add_foreign_key "notification_requests", "statuses", column: "last_status_id", on_delete: :nullify