diff options
author | Eugen Rochko <eugen@zeonfederated.com> | 2017-07-20 01:59:07 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-07-20 01:59:07 +0200 |
commit | 1fcdaafa6fbe6d746a096c33263d76e6819da46d (patch) | |
tree | f12319e574997bea52eb6074e35e84addcfa78fa /app/workers | |
parent | f24b81e27f1c6290cc6f43a71a32200a08c47d1c (diff) |
Fix webfinger retries (#4275)
* Do not raise unretryable exceptions in ResolveRemoteAccountService * Removed fatal exceptions from ResolveRemoteAccountService Exceptions that cannot be retried should not be raised. New exception class for those that can be retried (Mastodon::UnexpectedResponseError)
Diffstat (limited to 'app/workers')
-rw-r--r-- | app/workers/import_worker.rb | 6 | ||||
-rw-r--r-- | app/workers/pubsubhubbub/delivery_worker.rb | 2 |
2 files changed, 4 insertions, 4 deletions
diff --git a/app/workers/import_worker.rb b/app/workers/import_worker.rb index 90a226206..27cc6b365 100644 --- a/app/workers/import_worker.rb +++ b/app/workers/import_worker.rb @@ -44,7 +44,7 @@ class ImportWorker target_account = ResolveRemoteAccountService.new.call(row.first) next if target_account.nil? MuteService.new.call(from_account, target_account) - rescue Goldfinger::Error, HTTP::Error, OpenSSL::SSL::SSLError + rescue Mastodon::UnexpectedResponseError, HTTP::Error, OpenSSL::SSL::SSLError next end end @@ -56,7 +56,7 @@ class ImportWorker target_account = ResolveRemoteAccountService.new.call(row.first) next if target_account.nil? BlockService.new.call(from_account, target_account) - rescue Goldfinger::Error, HTTP::Error, OpenSSL::SSL::SSLError + rescue Mastodon::UnexpectedResponseError, HTTP::Error, OpenSSL::SSL::SSLError next end end @@ -66,7 +66,7 @@ class ImportWorker import_rows.each do |row| begin FollowService.new.call(from_account, row.first) - rescue Mastodon::NotPermittedError, ActiveRecord::RecordNotFound, Goldfinger::Error, HTTP::Error, OpenSSL::SSL::SSLError + rescue Mastodon::NotPermittedError, ActiveRecord::RecordNotFound, Mastodon::UnexpectedResponseError, HTTP::Error, OpenSSL::SSL::SSLError next end end diff --git a/app/workers/pubsubhubbub/delivery_worker.rb b/app/workers/pubsubhubbub/delivery_worker.rb index 2e1101b93..035a59048 100644 --- a/app/workers/pubsubhubbub/delivery_worker.rb +++ b/app/workers/pubsubhubbub/delivery_worker.rb @@ -23,7 +23,7 @@ class Pubsubhubbub::DeliveryWorker def process_delivery payload_delivery - raise "Delivery failed for #{subscription.callback_url}: HTTP #{payload_delivery.code}" unless response_successful? + raise Mastodon::UnexpectedResponseError, payload_delivery unless response_successful? subscription.touch(:last_successful_delivery_at) end |