qpid-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Gordon Sim <g...@redhat.com>
Subject Re: First try using the python client
Date Thu, 27 Nov 2008 11:52:49 GMT
Patrik Berglund wrote:
> Q2. What happen to messages sent to an exchange, that for some reason
>     has not (yet) been declared and bound as above. In our example the
>     messages just disappear.

If the exchange has not been created, the transfer to that exchange will 
fail with a 404, not found exception.

However if the exchange exists (as will always be the case for 
amq.direct) but there is no matching queue bound, the broker will 
currently try to route the message to any defined 'alternate-exchange' 
(unfortunately none is defined for amq.direct).

The spec says that if the accept-mode is explicit (and 
discard-unroutable is not set), the broker should issue a reject. 
Unfortunately that feature is not yet implemented.

I've created a Jira for that [1]. I'm afraid its probably a bit late to 
get that in for M4, but I'll work on getting that in as soon as the 
feature freeze is lifted.

The workaround in the meantime would be to use your own exchange 
instance (not amq.direct) with an alternate-exchange defined, and have 
the publisher bind a queue to that alternate exchange and subscribe to 
it so that it at least gets notified of messages that don't get routed. 
(There is an example for this in the 0-10 tests if its of interest).

[1] https://issues.apache.org/jira/browse/QPID-1490

View raw message