From 03d9618595bd2433a319c0bfc0f5bbb14653d0d6 Mon Sep 17 00:00:00 2001 From: Claire Date: Tue, 1 Nov 2022 12:59:23 +0100 Subject: [PATCH] Fix UserCleanupScheduler crash when an unconfirmed account has a moderation note (#19629) Fixes #19109 --- app/workers/scheduler/user_cleanup_scheduler.rb | 2 ++ 1 file changed, 2 insertions(+) diff --git a/app/workers/scheduler/user_cleanup_scheduler.rb b/app/workers/scheduler/user_cleanup_scheduler.rb index d1f00c47f..7a6995a1f 100644 --- a/app/workers/scheduler/user_cleanup_scheduler.rb +++ b/app/workers/scheduler/user_cleanup_scheduler.rb @@ -15,6 +15,8 @@ class Scheduler::UserCleanupScheduler def clean_unconfirmed_accounts! User.where('confirmed_at is NULL AND confirmation_sent_at <= ?', 2.days.ago).reorder(nil).find_in_batches do |batch| + # We have to do it separately because of missing database constraints + AccountModerationNote.where(account_id: batch.map(&:account_id)).delete_all Account.where(id: batch.map(&:account_id)).delete_all User.where(id: batch.map(&:id)).delete_all end