demarches-normaliennes/app/jobs/dossier_rebase_job.rb
Colin Darie 697aeeb348 refactor(job): DossieRebaseJob in new queue so they don't interfere with others
Ces jobs sont empilés par milliers d'un coup et peuvent mettre des dizaines
de minutes à s'écouler. On ne veut pas que ça interfère avec d'autres jobs,
notamment les scans antivirus qui, si retardés, empilent des "poll" pour
connaitre le status du fichier.
2023-03-09 15:18:14 +01:00

10 lines
325 B
Ruby

class DossierRebaseJob < ApplicationJob
queue_as :low_priority # they are massively enqueued, so don't interfere with others especially antivirus
# If by the time the job runs the Dossier has been deleted, ignore the rebase
discard_on ActiveRecord::RecordNotFound
def perform(dossier)
dossier.rebase!
end
end