Output of qpid-config exchanges -r … >From A:
Exchange '' (direct) bind [bbdae4e2-0430-4742-a807-15ace7783f27:0.0] => bbdae4e2-0430-4742-a807-15ace7783f27:0.0 bind [A] => A bind [qpid.bridge_queue_qpid.tcp:192.168.0.2:5672!test-topic!test-topic!_d7ea0855-a1db-451a-bb72-ec61814db3ee] => qpid.bridge_queue_qpid.tcp:192.168.0.2:5672!test-topic!test-topic!_d7ea0855-a1db-451a-bb72-ec61814db3ee Exchange 'amq.direct' (direct) Exchange 'amq.fanout' (fanout) Exchange 'amq.match' (headers) Exchange 'amq.topic' (topic) Exchange 'test-topic' (topic) bind [A] => A bind [B] => qpid.bridge_queue_qpid.tcp:192.168.0.2:5672!test-topic!test-topic!_d7ea0855-a1db-451a-bb72-ec61814db3ee {u'qpid.replicate': u'none', u'qpid.fed.origin': u'd7ea0855-a1db-451a-bb72-ec61814db3ee', u'qpid.fed.op': u'B', u'qpid.fed.tags': u'd7ea0855-a1db-451a-bb72-ec61814db3ee'} Exchange 'qmf.default.direct' (direct) Exchange 'qmf.default.topic' (topic) bind [direct.84b0aac3-1a88-4b49-b8b6-5861299aaded] => bbdae4e2-0430-4742-a807-15ace7783f27:0.0 Exchange 'qpid.management' (topic) >From B: Exchange '' (direct) bind [0eada2e3-a87a-42dc-9dd6-795599ee713c:0.0] => 0eada2e3-a87a-42dc-9dd6-795599ee713c:0.0 bind [B] => B bind [qpid.bridge_queue_qpid.tcp:192.168.0.1:5672!test-topic!test-topic!_d7ea0855-a1db-451a-bb72-ec61814db3ee] => qpid.bridge_queue_qpid.tcp:192.168.0.1:5672!test-topic!test-topic!_d7ea0855-a1db-451a-bb72-ec61814db3ee bind [qpid.bridge_queue_qpid.tcp:192.168.1.2:5672!test-topic!test-topic!_d7ea0855-a1db-451a-bb72-ec61814db3ee] => qpid.bridge_queue_qpid.tcp:192.168.1.2:5672!test-topic!test-topic!_d7ea0855-a1db-451a-bb72-ec61814db3ee Exchange 'amq.direct' (direct) Exchange 'amq.fanout' (fanout) Exchange 'amq.match' (headers) Exchange 'amq.topic' (topic) Exchange 'test-topic' (topic) bind [B] => B bind [A] => qpid.bridge_queue_qpid.tcp:192.168.0.1:5672!test-topic!test-topic!_d7ea0855-a1db-451a-bb72-ec61814db3ee {u'qpid.replicate': u'none', u'qpid.fed.origin': u'd7ea0855-a1db-451a-bb72-ec61814db3ee', u'qpid.fed.op': u'B', u'qpid.fed.tags': u'd7ea0855-a1db-451a-bb72-ec61814db3ee'} bind [C] => qpid.bridge_queue_qpid.tcp:192.168.1.2:5672!test-topic!test-topic!_d7ea0855-a1db-451a-bb72-ec61814db3ee {u'qpid.replicate': u'none', u'qpid.fed.origin': u'd7ea0855-a1db-451a-bb72-ec61814db3ee', u'qpid.fed.op': u'B', u'qpid.fed.tags': u'd7ea0855-a1db-451a-bb72-ec61814db3ee'} Exchange 'qmf.default.direct' (direct) Exchange 'qmf.default.topic' (topic) bind [direct.11ec68b2-a11a-40f9-b9dd-8eb58352329c] => 0eada2e3-a87a-42dc-9dd6-795599ee713c:0.0 Exchange 'qpid.management' (topic) >From C: Exchange '' (direct) bind [991fc38f-2e1e-4efd-a60d-8725a21b4360:0.0] => 991fc38f-2e1e-4efd-a60d-8725a21b4360:0.0 bind [C] => C bind [qpid.bridge_queue_qpid.tcp:192.168.1.1:5672!test-topic!test-topic!_d7ea0855-a1db-451a-bb72-ec61814db3ee] => qpid.bridge_queue_qpid.tcp:192.168.1.1:5672!test-topic!test-topic!_d7ea0855-a1db-451a-bb72-ec61814db3ee Exchange 'amq.direct' (direct) Exchange 'amq.fanout' (fanout) Exchange 'amq.match' (headers) Exchange 'amq.topic' (topic) Exchange 'test-topic' (topic) bind [C] => C bind [B] => qpid.bridge_queue_qpid.tcp:192.168.1.1:5672!test-topic!test-topic!_d7ea0855-a1db-451a-bb72-ec61814db3ee {u'qpid.replicate': u'none', u'qpid.fed.origin': u'd7ea0855-a1db-451a-bb72-ec61814db3ee', u'qpid.fed.op': u'B', u'qpid.fed.tags': u'd7ea0855-a1db-451a-bb72-ec61814db3ee'} Exchange 'qmf.default.direct' (direct) Exchange 'qmf.default.topic' (topic) bind [direct.aa8e0d92-7bbf-4784-8c66-14a2cf6d9379] => 991fc38f-2e1e-4efd-a60d-8725a21b4360:0.0 Exchange 'qpid.management' (topic) Outout of qpid-stat -e on A after trying to send a message to b and then c Exchanges exchange type dur bind msgIn msgOut msgDrop byteIn byteOut byteDrop =========================================================================================== direct 3 0 0 0 0 0 0 amq.direct direct Y 0 76 76 0 34.7k 34.7k 0 amq.fanout fanout Y 0 0 0 0 0 0 0 amq.match headers Y 0 0 0 0 0 0 0 amq.topic topic Y 0 0 0 0 0 0 0 test-topic topic 2 3 2 1 12 8 4 <--- (drop is 1 after attempt to sent to c) qmf.default.direct direct 0 9 9 0 2.40k 2.40k 0 qmf.default.topic topic 1 333 7 326 255k 17.2k 238k qpid.management topic 0 0 0 0 0 0 0 Thought: It seems that A doesn't know anything a about C or c so it drops the message... could this have something to do with using a topic exchange? Or should B be telling A what it knows about C (but isn't)? Thanks, -Andrew On Sep 11, 2013, at 5:18 PM, "Ted Ross [via Qpid]" <ml-node+s2158936n7598110...@n2.nabble.com> wrote: > > On 09/11/2013 04:39 PM, bacon wrote: > > > Let me start by saying that I am almost certainly missing some important > > detail on how exchanges/dynamic routes work. With that said, here is what I > > am trying to do with qpid-cpp-0.24: > > > > I have 3 exchanges on three machines, lets call the A, B and C. Each with > > bound queues a, b and c > > > > A has bidirectional dynamic routes with B > > B has bidirectional dynamic routes with C > > > > node A has no network connectivity with node C (only A <-> B and B<-> C) > > > > What I want to do is to introduce a message on exchange A with destination > > c > > and have the message first routed to B and then onto exchange C and queue c. > > What you are attempting should work. > > > > > The network setup: > > > > A <-192.168.0.2/24 ------- 192.268.0.1/24 -> B <- 192.168.1.2/24 ------- > > 192.168.1.1/24 -> > > > > The qpidd setup: > > > > On each: > > ./qpid-config add exchange topic test-topic > > ./qpid-config add queue A/B/C > > ./qpid-config bind test-topic A/B/C A/B/C > > > > on A: > > ./qpid-route -v dynamic add 192.168.0.1 192.168.0.2 test-topic > > ./qpid-route -v dynamic add 192.168.0.2 192.168.0.1 test-topic > > > > > > on B > > ./qpid-route -v dynamic add 192.168.1.1 192.168.1.2 test-topic > > ./qpid-route -v dynamic add 192.168.1.2 192.168.1.1 test-topic > > It would be helpful to see the output of "qpid-config exchanges -r" on > broker B (the middle one). This will show how the bindings have > arranged themselves. > > Actually, post the output for all three brokers. > > > > > > > I can send messages from A to B (and b) as well as B to C (and c) but every > > message I send to c from A gets dropped which says to me that A is never > > being informed of the queue on C via B. > > > > A route map is similarly puzzling: > > Don't worryabout route-map. It's connecting to one broker and > attempting to get the addresses of all the connected brokers. Since C > is not reachable, route-map won't be able to query it. This has no > bearing on the way messages flow. Route-map might work if run from B > since B has connectivity to all the brokers. > > > > > [root@A bin]# ./qpid-route route map localhost > > > > Finding Linked Brokers: > > localhost:5672... Ok > > 192.168.0.1:5672... Ok > > 192.168.0.2:5672... Ok > > 192.168.1.1:5672... [Errno 110] Connection timed out > > 192.168.1.1:5672... [Errno 110] Connection timed out > > > > Dynamic Routes: > > > > Exchange test-topic: > > 192.168.0.1:5672 => localhost:5672 > > 192.168.0.2:5672 <=> 192.168.0.1:5672 > > 192.168.1.1:5672 => 192.168.0.1:5672 > > > > Static Routes: > > none found > > > > > > This says to me that the IP address of C is being sent to A via B.. which, > > as I understand dynamic routes, should not happen (because I'm not doing > > routing between them). > > > > Any help would be greatly appreciated. I believe that this should be > > possible and I think there is some fundamental concept that I'm missing but > > I am stuck at the moment. > > > > Thanks! > > --Andrew > > > > > > > > -- > > View this message in context: > > http://qpid.2158936.n2.nabble.com/Dynamic-routing-between-disconnected-exchanges-tp7598100.html > > Sent from the Apache Qpid users mailing list archive at Nabble.com. > > > > --------------------------------------------------------------------- > > To unsubscribe, e-mail: [hidden email] > > For additional commands, e-mail: [hidden email] > > > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [hidden email] > For additional commands, e-mail: [hidden email] > > > > If you reply to this email, your message will be added to the discussion > below: > http://qpid.2158936.n2.nabble.com/Dynamic-routing-between-disconnected-exchanges-tp7598100p7598110.html > To unsubscribe from Dynamic routing between disconnected exchanges, click > here. > NAML signature.asc (858 bytes) <http://qpid.2158936.n2.nabble.com/attachment/7598133/0/signature.asc> -- View this message in context: http://qpid.2158936.n2.nabble.com/Dynamic-routing-between-disconnected-exchanges-tp7598100p7598133.html Sent from the Apache Qpid users mailing list archive at Nabble.com.