On 09/17/2013 12:12 PM, bacon wrote:
See response inline:

On Sep 16, 2013, at 3:31 AM, NimbusParc [via Qpid] 
<ml-node+s2158936n7598194...@n2.nabble.com> wrote:

Just now i tried this one. Everything works fine for me.
As Ted Ross wrote...

1) Create exchanges
2) Create dynamic routes
3) Create queues and bindings
I did this, in this order.

   After this, just check if all the links are operational or not.
All nodes report links are operational.

A:
Host            Port    Transport Durable  State             Last Error
=============================================================================
10.10.10.10     5672    tcp          Y     Operational



B:
Host            Port    Transport Durable  State             Last Error
=============================================================================
10.10.10.1      5672    tcp          Y     Operational
10.10.10.20     5672    tcp          Y     Operational


C:
Host            Port    Transport Durable  State             Last Error
=============================================================================
10.10.10.10     5672    tcp          Y     Operational       Closed by peer



  Then, check in route map that the routes are in bi-directional or not.
Previously, route map didn't work because the nodes were on segments that could 
not talk to each other. I've changed this for testing and they now report that 
all of the links are bidirectional except to localhost.. does that make any 
sense? Thats not a route I am declaring, it is being auto created somehow?


On A:
Finding Linked Brokers:
     localhost:5672... Ok
     10.10.10.10:5672... Ok
     10.10.10.1:5672... Ok
     10.10.10.20:5672... Ok

Dynamic Routes:

   Exchange test-topic:
     10.10.10.10:5672  => localhost:5672
     10.10.10.10:5672 <=> 10.10.10.1:5672
     10.10.10.20:5672 <=> 10.10.10.10:5672

Static Routes:
   none found



  Then check the bindings in between the Exchanges and Queues.
Am I supposed to see a binding on A for the queue on C that I want to send to? 
I don't have such a binding and I think this is the root of the problem.

Specifically, on A I have:

Exchange 'test-topic' (topic)
     bind [A] => b8037cdc-97e2-49fc-9c07-d1a1fb2c57dc:0.0
     bind [] => A
     bind [] => 
qpid.bridge_queue_qpid.tcp:10.10.10.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'', u'qpid.fed.tags': 
u'd7ea0855-a1db-451a-bb72-ec61814db3ee'}
     bind [B] => 
qpid.bridge_queue_qpid.tcp:10.10.10.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'', u'qpid.fed.tags': 
u'd7ea0855-a1db-451a-bb72-ec61814db3ee'}

What I don't see is something like…
     bind [C] => qpid.bridge_queue_qpid.tcp:…….



Just for reference, below is the shell script I used to test your scenario. My test doesn't have the disjoint IP networks yours does but I believe that's not relevant to what you're seeing. When I run this test, I see bindings for A, B, and C on all nodes.

-Ted

==================

#!/bin/bash
set -x

ROOT=$HOME/svn/qpid
SRC=$ROOT/build-cmake/src
QPIDD=$SRC/qpidd
QPID_CONFIG=$ROOT/tools/src/py/qpid-config
QPID_ROUTE=$ROOT/tools/src/py/qpid-route
DATA_DIR=$HOME/.qpidd

export PYTHONPATH=$ROOT/python:$ROOT/tools/src/py:$ROOT/extras/qmf/src/py

P1=10001
P2=10002
P3=10003

B1=localhost:$P1
B2=localhost:$P2
B3=localhost:$P3

QPIDD_OPTIONS="--log-enable notice+ --log-to-stderr no --auth no"
QPIDD_START_OPTIONS="$QPIDD_OPTIONS --daemon"
QPIDD_STOP_OPTIONS="$QPIDD_OPTIONS --quit"

echo "[Starting Brokers...]"
$QPIDD $QPIDD_START_OPTIONS --port $P1 --log-to-file log1 --data-dir $DATA_DIR/$P1 --federation-tag B1 $QPIDD $QPIDD_START_OPTIONS --port $P2 --log-to-file log2 --data-dir $DATA_DIR/$P2 --federation-tag B2 $QPIDD $QPIDD_START_OPTIONS --port $P3 --log-to-file log3 --data-dir $DATA_DIR/$P3 --federation-tag B3

echo "[Creating Exchanges...]"
$QPID_CONFIG -b $B1 add exchange topic test-topic
$QPID_CONFIG -b $B2 add exchange topic test-topic
$QPID_CONFIG -b $B3 add exchange topic test-topic

echo "[Set up Federation...]"
$QPID_ROUTE dynamic add $B1 $B2 test-topic
$QPID_ROUTE dynamic add $B2 $B1 test-topic

$QPID_ROUTE dynamic add $B3 $B2 test-topic
$QPID_ROUTE dynamic add $B2 $B3 test-topic

echo "[Creating the Wiring...]"
$QPID_CONFIG -b $B1 add queue A
$QPID_CONFIG -b $B2 add queue B
$QPID_CONFIG -b $B3 add queue C

$QPID_CONFIG -b $B1 bind test-topic A A
$QPID_CONFIG -b $B2 bind test-topic B B
$QPID_CONFIG -b $B3 bind test-topic C C



---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@qpid.apache.org
For additional commands, e-mail: users-h...@qpid.apache.org

Reply via email to