X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/19ae770973482257117fe8ded5619c3018c4b60f..224f384d411bb1b4cccc7165c55bb64fd5c695ad:/services/api/lib/tasks/delete_old_job_logs.rake diff --git a/services/api/lib/tasks/delete_old_job_logs.rake b/services/api/lib/tasks/delete_old_job_logs.rake index 7f2b31e1d6..18a5f02277 100644 --- a/services/api/lib/tasks/delete_old_job_logs.rake +++ b/services/api/lib/tasks/delete_old_job_logs.rake @@ -5,13 +5,8 @@ namespace :db do desc "Remove old job stderr entries from the logs table" task delete_old_job_logs: :environment do - Log.select("logs.id"). - joins("JOIN jobs ON object_uuid = jobs.uuid"). - where("event_type = :etype AND jobs.log IS NOT NULL AND jobs.finished_at < :age", - etype: "stderr", - age: Rails.configuration.clean_job_log_rows_after.ago). - find_in_batches do |old_log_ids| - Log.where(id: old_log_ids.map(&:id)).delete_all - end + delete_sql = "DELETE FROM logs WHERE id in (SELECT logs.id FROM logs JOIN jobs ON logs.object_uuid = jobs.uuid WHERE event_type = 'stderr' AND jobs.log IS NOT NULL AND jobs.finished_at < '#{Rails.configuration.clean_job_log_rows_after.ago}')" + + ActiveRecord::Base.connection.execute(delete_sql) end end