diaspora/app/workers/receive_base.rb
Jason Robinson 78299c9e2f Consolidate amount of sidekiq queues from 13 to 5
Sidekiq documentation says 'Sidekiq is not designed to work well with dozens of queues.'. Having the amount of queues we have at the moment brings no anyway.

Closes #5571
2016-08-10 08:51:22 +00:00

33 lines
1.4 KiB
Ruby

module Workers
class ReceiveBase < Base
sidekiq_options queue: :urgent
include Diaspora::Logging
# don't retry for errors that will fail again
def filter_errors_for_retry
yield
rescue DiasporaFederation::Entity::ValidationError,
DiasporaFederation::Entity::InvalidRootNode,
DiasporaFederation::Entity::InvalidEntityName,
DiasporaFederation::Entity::UnknownEntity,
DiasporaFederation::Entities::Relayable::SignatureVerificationFailed,
DiasporaFederation::Entities::Participation::ParentNotLocal,
DiasporaFederation::Federation::Receiver::InvalidSender,
DiasporaFederation::Federation::Receiver::NotPublic,
DiasporaFederation::Salmon::SenderKeyNotFound,
DiasporaFederation::Salmon::InvalidEnvelope,
DiasporaFederation::Salmon::InvalidSignature,
DiasporaFederation::Salmon::InvalidAlgorithm,
DiasporaFederation::Salmon::InvalidEncoding,
Diaspora::Federation::AuthorIgnored,
Diaspora::Federation::InvalidAuthor,
# TODO: deprecated
DiasporaFederation::Salmon::MissingMagicEnvelope,
DiasporaFederation::Salmon::MissingAuthor,
DiasporaFederation::Salmon::MissingHeader,
DiasporaFederation::Salmon::InvalidHeader => e
logger.warn "don't retry for error: #{e.class}"
end
end
end