From d337f5ee41c376fcd54a92046f92676246bea359 Mon Sep 17 00:00:00 2001 From: rhymes Date: Tue, 11 Aug 2020 20:46:17 +0200 Subject: [PATCH] [deploy] Add foreign keys to Ahoy models (#9636) * Add foreign keys to Ahoy models * Empty incorrect script * Delete with SQL * Moved cleanup script in #9710 * Trigger Travis correctly --- ...00805100552_add_missing_foreign_keys_to_ahoy_models.rb | 8 ++++++++ ...49_validate_add_missing_foreign_keys_to_ahoy_models.rb | 8 ++++++++ db/schema.rb | 4 ++++ .../20200729120730_remove_orphaned_ahoy_events.rb | 6 +----- 4 files changed, 21 insertions(+), 5 deletions(-) create mode 100644 db/migrate/20200805100552_add_missing_foreign_keys_to_ahoy_models.rb create mode 100644 db/migrate/20200805102249_validate_add_missing_foreign_keys_to_ahoy_models.rb diff --git a/db/migrate/20200805100552_add_missing_foreign_keys_to_ahoy_models.rb b/db/migrate/20200805100552_add_missing_foreign_keys_to_ahoy_models.rb new file mode 100644 index 000000000..bb6f91af4 --- /dev/null +++ b/db/migrate/20200805100552_add_missing_foreign_keys_to_ahoy_models.rb @@ -0,0 +1,8 @@ +class AddMissingForeignKeysToAhoyModels < ActiveRecord::Migration[6.0] + def change + add_foreign_key :ahoy_events, :ahoy_visits, column: :visit_id, on_delete: :cascade, validate: false + add_foreign_key :ahoy_events, :users, on_delete: :cascade, validate: false + add_foreign_key :ahoy_messages, :users, on_delete: :cascade, validate: false + add_foreign_key :ahoy_visits, :users, on_delete: :cascade, validate: false + end +end diff --git a/db/migrate/20200805102249_validate_add_missing_foreign_keys_to_ahoy_models.rb b/db/migrate/20200805102249_validate_add_missing_foreign_keys_to_ahoy_models.rb new file mode 100644 index 000000000..ac7dc2eb1 --- /dev/null +++ b/db/migrate/20200805102249_validate_add_missing_foreign_keys_to_ahoy_models.rb @@ -0,0 +1,8 @@ +class ValidateAddMissingForeignKeysToAhoyModels < ActiveRecord::Migration[6.0] + def change + validate_foreign_key :ahoy_events, :ahoy_visits + validate_foreign_key :ahoy_events, :users + validate_foreign_key :ahoy_messages, :users + validate_foreign_key :ahoy_visits, :users + end +end diff --git a/db/schema.rb b/db/schema.rb index 67986efb7..98756888e 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -1336,6 +1336,10 @@ ActiveRecord::Schema.define(version: 2020_08_06_193438) do t.datetime "updated_at", precision: 6, null: false end + add_foreign_key "ahoy_events", "ahoy_visits", column: "visit_id", on_delete: :cascade + add_foreign_key "ahoy_events", "users", on_delete: :cascade + add_foreign_key "ahoy_messages", "users", on_delete: :cascade + add_foreign_key "ahoy_visits", "users", on_delete: :cascade add_foreign_key "api_secrets", "users", on_delete: :cascade add_foreign_key "audit_logs", "users" add_foreign_key "badge_achievements", "badges" diff --git a/lib/data_update_scripts/20200729120730_remove_orphaned_ahoy_events.rb b/lib/data_update_scripts/20200729120730_remove_orphaned_ahoy_events.rb index e0a368cab..3b82c9676 100644 --- a/lib/data_update_scripts/20200729120730_remove_orphaned_ahoy_events.rb +++ b/lib/data_update_scripts/20200729120730_remove_orphaned_ahoy_events.rb @@ -1,11 +1,7 @@ module DataUpdateScripts class RemoveOrphanedAhoyEvents def run - Ahoy::Event.find_each do |event| - next if event.visit.blank? - - event.destroy - end + # Deleted the script as it was not necessary end end end