Fix web push subscriptions being deleted on rate limit or timeout (#11826)

th-downstream
Eugen Rochko 5 years ago committed by GitHub
parent 8824964836
commit a5e34d5ff8

@ -11,7 +11,13 @@ class Web::PushNotificationWorker
subscription.push(notification) unless notification.activity.nil? subscription.push(notification) unless notification.activity.nil?
rescue Webpush::ResponseError => e rescue Webpush::ResponseError => e
subscription.destroy! if (400..499).cover?(e.response.code.to_i) code = e.response.code.to_i
if (400..499).cover?(code) && ![408, 429].include?(code)
subscription.destroy!
else
raise e
end
rescue ActiveRecord::RecordNotFound rescue ActiveRecord::RecordNotFound
true true
end end

Loading…
Cancel
Save