When PuSH subscribe attempts are exhausted, unsubscribe (#4422)
This commit is contained in:
parent
ff9d344d4c
commit
6e186b9c77
|
@ -3,7 +3,7 @@
|
||||||
class Pubsubhubbub::SubscribeWorker
|
class Pubsubhubbub::SubscribeWorker
|
||||||
include Sidekiq::Worker
|
include Sidekiq::Worker
|
||||||
|
|
||||||
sidekiq_options queue: 'push', retry: 10, unique: :until_executed
|
sidekiq_options queue: 'push', retry: 10, unique: :until_executed, dead: false
|
||||||
|
|
||||||
sidekiq_retry_in do |count|
|
sidekiq_retry_in do |count|
|
||||||
case count
|
case count
|
||||||
|
@ -18,6 +18,12 @@ class Pubsubhubbub::SubscribeWorker
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
sidekiq_retries_exhausted do |msg, _e|
|
||||||
|
account = Account.find(msg['args'].first)
|
||||||
|
logger.error "PuSH subscription attempts for #{account.acct} exhausted. Unsubscribing"
|
||||||
|
::UnsubscribeService.new.call(account)
|
||||||
|
end
|
||||||
|
|
||||||
def perform(account_id)
|
def perform(account_id)
|
||||||
account = Account.find(account_id)
|
account = Account.find(account_id)
|
||||||
logger.debug "PuSH re-subscribing to #{account.acct}"
|
logger.debug "PuSH re-subscribing to #{account.acct}"
|
||||||
|
|
Reference in New Issue