From 9a3b1a906a1a73b70582d894954c2c7e5252e5e7 Mon Sep 17 00:00:00 2001 From: Ruidan Date: Wed, 13 Nov 2024 16:18:43 -0500 Subject: [PATCH] Use in_batches for status delete --- app/jobs/shipit/destroy_stack_job.rb | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/app/jobs/shipit/destroy_stack_job.rb b/app/jobs/shipit/destroy_stack_job.rb index bb64d0b48..495b2924b 100644 --- a/app/jobs/shipit/destroy_stack_job.rb +++ b/app/jobs/shipit/destroy_stack_job.rb @@ -23,8 +23,10 @@ def perform(stack) Shipit::CommitDeploymentStatus.where(commit_deployment_id: commit_deployments_ids).in_batches(&:delete_all) Shipit::CommitDeployment.where(id: commit_deployments_ids).in_batches(&:delete_all) - Shipit::Status.where(commit_id: commits_ids).find_in_batches do |batch| - Shipit::Status.where(id: batch.map(&:id)).delete_all + commits_ids.each_slice(1000) do |commit_ids_batch| + Shipit::Status.where(commit_id: commit_ids_batch) + .in_batches(of: 500) + .delete_all end commits_ids.each_slice(1000) do |batch|