As I see there is no bindings on broker B with the key "all.a.x", "all.a", so, 
it works as expected and you can't see " messages that were sent to the topic 
exchange on broker B with the subjects "all.a.x", "all.a"" 

It looks like for me that "key=all" should works.

I used all kind of links and it works like a charm - queue link, static and 
dynamic routes
I think links should would in your case too.
Could you please give a little bit more info by posting results of:
qpid-config -b queues
qpid-route route map
on both brokers?

Regards,
Boris

-----Original Message-----
From: [email protected] [mailto:[email protected]] 
Sent: Thursday, June 30, 2011 2:17 AM
To: [email protected]
Subject: Federation - trouble-shooting

The documentation on creating routes with qpid-route seems clear and easy to 
follow, but I'm still missing something.

I've been testing with two brokers, each having a topic exchange. 
Applications
connected to a broker can communicate with each other by sending messages to 
the topic exchange and reading messages from a queue (exclusive to the 
application) that is bound to the topic exchange.  The bindings are such that 
an application can send messages to another application, or to all applications 
connected to the same broker.
So far, so good.

My intention is to implement federation between the topic exchanges on the two 
brokers so that an application can also send messages to another application on 
another broker, to all applications on another broker, or to all applications 
on all brokers.
After creating the routes, however, I still cannot get messages to pass between 
brokers.  I've been mostly testing with exchange routes, but I have also tested 
dynamic and queue routes with similar results.  In the exchange route case, the 
messages get stuck in the topic exchange on the source boker (msgIn increments, 
but msgOut does not).  In the queue route case, the messages get stuck in the 
source queue.

When I create the routes, the links are automatically created (one in each 
direction), but only one is "Operational".  The second link gets stuck in 
"Waiting - Closed by peer"

Some questions:

1. What are some possible causes of the "Closed by peer" error, or how can I 
trouble-shoot the links?

2. Even with only one link being "Operational," I would expect that federation 
would at least work in one direction, but instead I can't get federation to 
work in either direction.  Is there something else I am doing wrong?

Here's my (typical) setup...

Broker A:

exchange: e_topic
    type: topic
    dur: N

queue: q_x
    dur: N
    autoDel: Y
    excl: Y
    bindings:
        bind [all] => e_topic
        bind [all.a] => e_topic
        bind [all.a.x] => e_topic

Broker B:

exchange: e_topic
    type: topic
    dur: N

queue: q_x
    dur: N
    autoDel Y
    excl: Y
    bindings:
        bind [all] => e_topic
        bind [all.b] => e_topic
        bind [all.b.x] => e_topic

Static (exchange) Routes between A and B:

    A(ex=e_topic) <= B(ex=e_topic) key=all.a.#
    A(ex=e_topic) <= B(ex=e_topic) key=all.a
    A(ex=e_topic) <= B(ex=e_topic) key=all
    B(ex=e_topic) <= A(ex=e_topic) key=all.b.#
    B(ex=e_topic) <= A(ex=e_topic) key=all.b
    B(ex=e_topic) <= A(ex=e_topic) key=all

Current result: Appplication X connected to broker A can see messages that were 
sent to the topic exchange on broker A with the subjects "all.a.x", "all.a", or 
"all"; but does not see messages that were sent to the topic exchange on broker 
B with the subjects "all.a.x", "all.a", or "all".



David Johnson
Princeton Consultants
2 Research Way
Princeton, NJ 08540
609.987.8787 x266

_______________________________________________________

The information contained in this message may be privileged and conf idential 
and protected from disclosure. If you are not the original intended recipient, 
you are hereby notified that any review, retransmission, dissemination, or 
other use of, or taking of any action in reliance upon, this information is 
prohibited. If you have received this communication in error, please notify the 
sender immediately by replying to this message and delete it from your 
computer. Thank you for your cooperation. Troika Dialog, Russia. 
If you need assistance please contact our Contact Center  (+7495) 258 0500 or 
go to www.troika.ru/eng/Contacts/system.wbp  



---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:[email protected]

Reply via email to