From 5f0fc639dada7a58d2bb5524b4ec081ee6cc143f Mon Sep 17 00:00:00 2001 From: Claire Date: Thu, 7 Apr 2022 20:17:49 +0200 Subject: [PATCH] Fix error re-running some migrations if they get interrupted at the wrong moment (#17989) --- lib/mastodon/migration_helpers.rb | 3 +++ 1 file changed, 3 insertions(+) diff --git a/lib/mastodon/migration_helpers.rb b/lib/mastodon/migration_helpers.rb index e920ff88f..beef83362 100644 --- a/lib/mastodon/migration_helpers.rb +++ b/lib/mastodon/migration_helpers.rb @@ -813,6 +813,9 @@ module Mastodon def update_index(table_name, index_name, columns, **index_options) if index_name_exists?(table_name, "#{index_name}_new") && index_name_exists?(table_name, index_name) remove_index table_name, "#{index_name}_new" + elsif index_name_exists?(table_name, "#{index_name}_new") + # Very unlikely case where the script has been interrupted during/after removal but before renaming + rename_index table_name, "#{index_name}_new", index_name end begin