]> cat aescling's git repositories - mastodon.git/commitdiff
Log BackupWorker backtrace, delete Backup if retries exhausted (#6769)
authorEugen Rochko <eugen@zeonfederated.com>
Tue, 13 Mar 2018 07:15:24 +0000 (08:15 +0100)
committerGitHub <noreply@github.com>
Tue, 13 Mar 2018 07:15:24 +0000 (08:15 +0100)
app/workers/backup_worker.rb

index ec6db4e9e3fae53fb7123ef8f53f45dc18fc8fc2..e4c609d70675768f4f639ca1894df0420f0279ca 100644 (file)
@@ -3,7 +3,16 @@
 class BackupWorker
   include Sidekiq::Worker
 
-  sidekiq_options queue: 'pull'
+  sidekiq_options queue: 'pull', backtrace: true, retry: 5, dead: false
+
+  sidekiq_retries_exhausted do |msg|
+    backup_id = msg['args'].first
+
+    ActiveRecord::Base.connection_pool.with_connection do
+      backup = Backup.find(backup_id)
+      backup&.destroy
+    end
+  end
 
   def perform(backup_id)
     backup = Backup.find(backup_id)