diff options
Diffstat (limited to 'activestorage/app/jobs/active_storage/purge_job.rb')
-rw-r--r-- | activestorage/app/jobs/active_storage/purge_job.rb | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/activestorage/app/jobs/active_storage/purge_job.rb b/activestorage/app/jobs/active_storage/purge_job.rb new file mode 100644 index 0000000000..2604977bf1 --- /dev/null +++ b/activestorage/app/jobs/active_storage/purge_job.rb @@ -0,0 +1,11 @@ +# frozen_string_literal: true + +# Provides asynchronous purging of ActiveStorage::Blob records via ActiveStorage::Blob#purge_later. +class ActiveStorage::PurgeJob < ActiveStorage::BaseJob + discard_on ActiveRecord::RecordNotFound + retry_on ActiveRecord::Deadlocked, attempts: 10, wait: :exponentially_longer + + def perform(blob) + blob.purge + end +end |