mirror of
https://github.com/rails/rails.git
synced 2022-11-09 12:12:34 -05:00
Discard ActiveStorage::PurgeJobs on ActiveRecord::InvalidForeignKey
This commit is contained in:
parent
562ec3dcd1
commit
6c45b04a73
2 changed files with 11 additions and 1 deletions
|
@ -2,7 +2,7 @@
|
||||||
|
|
||||||
# Provides asynchronous purging of ActiveStorage::Blob records via ActiveStorage::Blob#purge_later.
|
# Provides asynchronous purging of ActiveStorage::Blob records via ActiveStorage::Blob#purge_later.
|
||||||
class ActiveStorage::PurgeJob < ActiveStorage::BaseJob
|
class ActiveStorage::PurgeJob < ActiveStorage::BaseJob
|
||||||
discard_on ActiveRecord::RecordNotFound
|
discard_on ActiveRecord::RecordNotFound, ActiveRecord::InvalidForeignKey
|
||||||
|
|
||||||
def perform(blob)
|
def perform(blob)
|
||||||
blob.purge
|
blob.purge
|
||||||
|
|
|
@ -24,4 +24,14 @@ class ActiveStorage::PurgeJobTest < ActiveJob::TestCase
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
test "ignores attached blob" do
|
||||||
|
User.create! name: "DHH", avatar: @blob
|
||||||
|
|
||||||
|
perform_enqueued_jobs do
|
||||||
|
assert_nothing_raised do
|
||||||
|
ActiveStorage::PurgeJob.perform_later @blob
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
Loading…
Reference in a new issue