From 9130b3cda9cd460aa137e399a8b50880aba3bb63 Mon Sep 17 00:00:00 2001 From: Yamagishi Kazutoshi Date: Wed, 30 May 2018 16:39:52 +0900 Subject: [PATCH] Fix broken migrate (regression from #7658) (#7674) --- ...20180528141303_fix_accounts_unique_index.rb | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/db/migrate/20180528141303_fix_accounts_unique_index.rb b/db/migrate/20180528141303_fix_accounts_unique_index.rb index 2e5eca814..92e490f9e 100644 --- a/db/migrate/20180528141303_fix_accounts_unique_index.rb +++ b/db/migrate/20180528141303_fix_accounts_unique_index.rb @@ -36,7 +36,7 @@ class FixAccountsUniqueIndex < ActiveRecord::Migration[5.2] def deduplicate_account!(account_ids) accounts = Account.where(id: account_ids).to_a - accounts = account.first.local? ? accounts.sort_by(&:created_at) : accounts.sort_by(&:updated_at).reverse + accounts = accounts.first.local? ? accounts.sort_by(&:created_at) : accounts.sort_by(&:updated_at).reverse reference_account = accounts.shift accounts.each do |other_account| @@ -69,15 +69,19 @@ class FixAccountsUniqueIndex < ActiveRecord::Migration[5.2] # to check for (and skip past) uniqueness errors [Follow, FollowRequest, Block, Mute].each do |klass| klass.where(account_id: duplicate_account.id).find_each do |record| - record.update(account_id: main_account.id) - rescue ActiveRecord::RecordNotUnique - next + begin + record.update(account_id: main_account.id) + rescue ActiveRecord::RecordNotUnique + next + end end klass.where(target_account_id: duplicate_account.id).find_each do |record| - record.update(target_account_id: main_account.id) - rescue ActiveRecord::RecordNotUnique - next + begin + record.update(target_account_id: main_account.id) + rescue ActiveRecord::RecordNotUnique + next + end end end end