diff --git a/app/services/delete_account_service.rb b/app/services/delete_account_service.rb index 7c7cb97df2..f5311cf7b8 100644 --- a/app/services/delete_account_service.rb +++ b/app/services/delete_account_service.rb @@ -147,6 +147,7 @@ class DeleteAccountService < BaseService purge_polls! purge_generated_notifications! purge_favourites! + purge_status_reactions! purge_bookmarks! purge_feeds! purge_other_associations! @@ -193,6 +194,15 @@ class DeleteAccountService < BaseService end end + def purge_status_reactions! + @account.status_reactions.in_batches do |status_reactions| + ids = status_reactions.pluck(:status_id) + Chewy.strategy.current.update(StatusesIndex, ids) if Chewy.enabled? + Rails.cache.delete_multi(ids.map { |id| "statuses/#{id}" }) + status_reactions.delete_all + end + end + def purge_bookmarks! @account.bookmarks.in_batches do |bookmarks| Chewy.strategy.current.update(StatusesIndex, bookmarks.pluck(:status_id)) if Chewy.enabled?