I could argue that queues do have types, because a durable queue can't be
substituted for a nondurable one.  Both are kinds of queues, yet they have
distinct properties.  And the distinction is meaningful enough that
declaring a queue with different properties is an error at the broker level.

However, if the issue is just the message, there must be something we can
show the user that informs them they're trying to create an
[exchange|queue] with different properties than what's already been
declared. It's the same basic error.  Do you have any suggestions?


On Wednesday, January 1, 2014, Michael Klishin wrote:

> In lib/hutch/broker.rb:
>
> > @@ -211,6 +209,22 @@ def with_connection_error_handler
> >        raise ConnectionError.new("couldn't connect to api at #{api_config.management_uri}")
> >      end
> >
> > +    def with_bunny_precondition_handler(item)
> > +      yield
> > +    rescue Bunny::PreconditionFailed => ex
> > +      logger.error ex.message
> > +      raise WorkerSetupError.new("could not create #{item} due to a type " +
>
> Queues do not have types.
>
> —
> Reply to this email directly or view it on GitHub<https://github.com/gocardless/hutch/pull/68/files#r8606125>
> .
>