You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@qpid.apache.org by Tomáš Šoltys <to...@gmail.com> on 2011/11/16 13:16:02 UTC

Alternate Exchange of Alternate Exchange

Hi all,

I have a three exchanges. Let's say E1, E2, E3 where E2 is alternate
exchange of E1 and E3 is alternate exchange of E2.
If a message can not be routed to E1, then it should go to E2. This
works. But if it can not be routed to E2 it should go to E3, but it
does not.

Is this intended behaviour?

Thanks and regards,
Tomas

---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:users-subscribe@qpid.apache.org


Re: Alternate Exchange of Alternate Exchange

Posted by Gordon Sim <gs...@redhat.com>.
On 11/16/2011 12:16 PM, Tomáš Šoltys wrote:
> Hi all,
>
> I have a three exchanges. Let's say E1, E2, E3 where E2 is alternate
> exchange of E1 and E3 is alternate exchange of E2.
> If a message can not be routed to E1, then it should go to E2. This
> works. But if it can not be routed to E2 it should go to E3, but it
> does not.
>
> Is this intended behaviour?

The AMQP 0-10 specification has a rule ('double-failure' on p216), that 
states:

     A message which is being routed to a alternate exchange,
     MUST NOT be re-routed to a secondary alternate exchange
     if it fails to route in the primary alternate exchange.
     After such a failure, the message MUST be dropped. This
     prevents looping.

Any other behaviour would be a deviation from the specification (and of 
course would need to include detection of loops, at which point message 
would presumably be dropped).

---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:users-subscribe@qpid.apache.org