From 7b33586b67321731813ce5271ef6e487c890882d Mon Sep 17 00:00:00 2001 From: Claire Date: Sun, 23 Apr 2023 22:25:40 +0200 Subject: [PATCH] Fix AccountsStatusesCleanupScheduler not spreading deletes across accounts correctly (#24607) --- .../scheduler/accounts_statuses_cleanup_scheduler.rb | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/app/workers/scheduler/accounts_statuses_cleanup_scheduler.rb b/app/workers/scheduler/accounts_statuses_cleanup_scheduler.rb index d245f6bbdc..ff45c3aa1c 100644 --- a/app/workers/scheduler/accounts_statuses_cleanup_scheduler.rb +++ b/app/workers/scheduler/accounts_statuses_cleanup_scheduler.rb @@ -42,7 +42,7 @@ class Scheduler::AccountsStatusesCleanupScheduler num_processed_accounts = 0 scope = AccountStatusesCleanupPolicy.where(enabled: true) - scope.where(Account.arel_table[:id].gt(first_policy_id)) if first_policy_id.present? + scope = scope.where(id: first_policy_id...) if first_policy_id.present? scope.find_each(order: :asc) do |policy| num_deleted = AccountStatusesCleanupService.new.call(policy, [budget, PER_ACCOUNT_BUDGET].min) num_processed_accounts += 1 unless num_deleted.zero? @@ -77,14 +77,14 @@ class Scheduler::AccountsStatusesCleanupScheduler end def last_processed_id - redis.get('account_statuses_cleanup_scheduler:last_account_id') + redis.get('account_statuses_cleanup_scheduler:last_policy_id') end def save_last_processed_id(id) if id.nil? - redis.del('account_statuses_cleanup_scheduler:last_account_id') + redis.del('account_statuses_cleanup_scheduler:last_policy_id') else - redis.set('account_statuses_cleanup_scheduler:last_account_id', id, ex: 1.hour.seconds) + redis.set('account_statuses_cleanup_scheduler:last_policy_id', id, ex: 1.hour.seconds) end end end