Merge pull request #5982 from betagouv/ignore-integrity-errors
Jobs : lorsqu'une erreur ActiveStorage::IntegrityError se produit pendant le scan des virus, le job est maintenant automatiquement retenté plus tard.
This commit is contained in:
commit
c14720d915
1 changed files with 3 additions and 0 deletions
|
@ -6,6 +6,9 @@ class VirusScannerJob < ApplicationJob
|
||||||
# If the file is deleted during the scan, ignore the error
|
# If the file is deleted during the scan, ignore the error
|
||||||
discard_on ActiveStorage::FileNotFoundError
|
discard_on ActiveStorage::FileNotFoundError
|
||||||
|
|
||||||
|
# If for some reason the file appears invalid, retry for a while
|
||||||
|
retry_on ActiveStorage::IntegrityError, attempts: 10, wait: 5.seconds
|
||||||
|
|
||||||
def perform(blob)
|
def perform(blob)
|
||||||
metadata = extract_metadata_via_virus_scanner(blob)
|
metadata = extract_metadata_via_virus_scanner(blob)
|
||||||
blob.update!(metadata: blob.metadata.merge(metadata))
|
blob.update!(metadata: blob.metadata.merge(metadata))
|
||||||
|
|
Loading…
Reference in a new issue