qpid-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Ilyushonak Barys <Barys_Ilyusho...@troika.ru>
Subject RE: Federation - trouble-shooting
Date Tue, 05 Jul 2011 10:42:27 GMT
David,

I have fixed the issue on my site and it was problem with DNS.
1. I have error with my DNS resolving, so I fixed it on my RedHat
2. After that my qpid links, which I see by qpid-route link list, still exists in error state.
To flush it I had to remove links by qpid-tool. I think broker restart should help.
3. Then I recreate all my routes and it works!


-----Original Message-----
From: Ilyushonak Barys [mailto:Barys_Ilyushonak@troika.ru] 
Sent: Tuesday, July 05, 2011 1:51 PM
To: users@qpid.apache.org
Subject: RE: Federation - trouble-shooting

I faced with similar problem, if I created bindings in c++  code, not through qpid-config
tool.
I'm going to investigate it and let you know my results.

-----Original Message-----
From: DJohnson@princeton.com [mailto:DJohnson@princeton.com]
Sent: Thursday, June 30, 2011 10:29 PM
To: users@qpid.apache.org
Subject: RE: Federation - trouble-shooting

> Could you please try without "ack"?
removing "-ack 0" has made no difference

> And what version of qpid do you use for A and B?
the brokers are running on RHEL5, with installed packages:

    version 0.7.946106-28.e15:

    qpid-cpp-client.x86_64
    qpid-cpp-client-devel.x86_64
    qpid-cpp-client-devel-docs.x86_64
    qpid-cpp-client-ssl.x86_64
    qpid-cpp-server.x86_64
    qpid-cpp-server-cluster.x86_64
    qpid-cpp-server-devel.x86_64
    qpid-cpp-server-ssl.x86_64
    qpid-cpp-server-store.x86_64
    qpid-cpp-server-xml.x86_64

    version 0.7.946106-15.e15

    qpid-java-client.noarch
    qpid-java-common.noarch
    qpid-java-example.noarch

    version 0.7.946106-12.e15

    qpid-tools.noarch



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




From:   Ilyushonak Barys <Barys_Ilyushonak@troika.ru>
To:     "users@qpid.apache.org" <users@qpid.apache.org>
Date:   06/30/2011 11:01 AM
Subject:        RE: Federation - trouble-shooting



I'm not sure about
--ack 0
I didn't use it.
Could you please try without "ack"?

And what version of qpid do you use for A and B?

-----Original Message-----
From: DJohnson@princeton.com [mailto:DJohnson@princeton.com]
Sent: Thursday, June 30, 2011 6:52 PM
To: users@qpid.apache.org
Subject: RE: Federation - trouble-shooting

qpid-route --ack 0 route add A B e_topic all qpid-route --ack 0 route add A B e_topic all.a
qpid-route --ack 0 route add A B e_topic all.a.x qpid-route --ack 0 route add B A e_topic
all qpid-route --ack 0 route add B A e_topic all.b qpid-route --ack 0 route add B A e_topic
all.b.x


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




From:   Ilyushonak Barys <Barys_Ilyushonak@troika.ru>
To:     "users@qpid.apache.org" <users@qpid.apache.org>
Date:   06/30/2011 10:37 AM
Subject:        RE: Federation - trouble-shooting



", but in my case there is no evidence of an extra binding being added to the exchange on
either broker "

According to docs (
http://qpid.apache.org/books/0.10/AMQP-Messaging-Broker-CPP-Book/html/ch01s04.html

)
"Internally, creating an exchange route creates a private queue (auto-delete, exclusive) on
the source broker to hold messages that are to be routed to the destination broker, binds
this private queue to the source broker exchange, and subscribes the destination broker to
the queue. "
It should be created.

Could you please send "qpid-route route add" command you used for create the route?

-----Original Message-----
From: DJohnson@princeton.com [mailto:DJohnson@princeton.com]
Sent: Thursday, June 30, 2011 5:42 PM
To: users@qpid.apache.org
Subject: RE: Federation - trouble-shooting

> In my case I have temp queue on source broker after create the correct
route and
> binding  - qpid-config -b exchanges:
> bind [murex.all.trades.nbd] =>
bridge_queue_1_9258360d-a740-44a2-91ec-65bcf56f3e50

I'm assuming that the temp queue is supposed to be created automatically when you create the
exchange routes, but in my case there is no evidence of an extra binding being added to the
exchange on either broker:

    qpid-config -b exchanges -a A:

    Exchange 'e_topic' (topic)
        bind[all] => q_x
        bind[all.a] => q_x
        bind[all.a.x] => q_x

> In my case the command  qpid-stat -e return actual count of exchange
binding (bind
> column). In your case this value is 0 on both brokers. 

I don't follow.  For me, qpid-stat -e gives bind=3 for the topic exchanges 


(the three "=> q_x" bindings), and qpid-stat -q gives bind=4 for the exclusive queue (the
three "=> e_topic" bindings and the one "=> ''" 
binding for the direct exchange '').  However, I don't see any extra bindings for a temporary
queue.






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




From:   Ilyushonak Barys <Barys_Ilyushonak@troika.ru>
To:     "users@qpid.apache.org" <users@qpid.apache.org>
Date:   06/30/2011 04:28 AM
Subject:        RE: Federation - trouble-shooting



David, thank you for the info.

I think I got your idea - send messages to broker B with key= all.a.x, but 


do not have bindings on B with this key on the local queues.

As I see, the route works only while bindings exists. So, could you please 


check the following things.

1. In my case I have temp queue on source broker after create the correct route and binding
 - qpid-config -b exchanges:
    bind [murex.all.trades.nbd] =>
bridge_queue_1_9258360d-a740-44a2-91ec-65bcf56f3e50

2. In my case the command  qpid-stat -e return actual count of exchange binding (bind column).
In your case this value is 0 on both brokers. 

qpid-stat -e A:
    exchange type  dur bind msgIn msgOut msgDrop byteIn byteOut byteDrop
    ====================================================================
    e_topic  topic     3    0     0      0       0      0       0

qpid-stat -e B:
    exchange type  dur bind msgIn msgOut msgDrop byteIn byteOut byteDrop
    ====================================================================
    e_topic  topic     3    0     0      0       0      0       0

-----Original Message-----
From: DJohnson@princeton.com [mailto:DJohnson@princeton.com]
Sent: Thursday, June 30, 2011 11:51 AM
To: users@qpid.apache.org
Subject: RE: Federation - trouble-shooting

Correction, for Broker B:

    qpid-config -b queues -a B:

    Queue 'q_x'
        bind [q_x] => ''
        bind [all] => e_topic
        bind [all.b] => e_topic
        bind [all.b.x] => e_topic



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




From:   <DJohnson@princeton.com>
To:     <users@qpid.apache.org>
Date:   06/30/2011 03:47 AM
Subject:        RE: Federation - trouble-shooting



> 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"

Messages sent to the topic exchange on broker B with the keys "all.a.x" or 




"all.a" are not bound to any dedicated queue on broker B...but should federate over to the
topic exchange on broker A where there is a dedicated 




queue with bindings for "all.a.x" and "all.a".  At least, that is what I am intending.  But
the messages never leave the source exchange on the source broker, so the federation is not
currently working.

> It looks like for me that "key=all" should works.
A message sent to the topic exchange on either broker with the key "all" 
currently propagates only to the dedicated queues on that broker, but do not federate to the
other broker.

> qpid-config -b queues
> qpid-route route map

Broker A:

    qpid-stat -e A:

    exchange type  dur bind msgIn msgOut msgDrop byteIn byteOut byteDrop
    ====================================================================
    e_topic  topic     3    0     0      0       0      0       0

    qpid-stat -q A:

    queue dur autoDel excl msg msgIn msgOut bytes bytesIn bytesOut cons bind ========================================================================
    q_x       Y       Y    0   0     0      0     0       0        1    4

    qpid-config -b queues -a A:

    Queue 'q_x'
        bind [q_x] => ''
        bind [all] => e_topic
        bind [all.a] => e_topic
        bind [all.a.x] => e_topic

    qpid-route link list A:

    Host Port  Transport Durable Stats       Last Error
    ===================================================
    B    port  tcp       N       Operational

Broker B:

    qpid-stat -e B:

    exchange type  dur bind msgIn msgOut msgDrop byteIn byteOut byteDrop
    ====================================================================
    e_topic  topic     3    0     0      0       0      0       0

    qpid-stat -q B:

    queue dur autoDel excl msg msgIn msgOut bytes bytesIn bytesOut cons bind ========================================================================
    q_x       Y       Y    0   0     0      0     0       0        1    4

    qpid-config -b queues -a A:

    Queue 'q_x'
        bind [q_x] => ''
        bind [all] => e_topic
        bind [all.ba] => e_topic
        bind [all.b.x] => e_topic

    qpid-route link list B:

    Host Port  Transport Durable Stats       Last Error
    =======================================================
    A    port  tcp       N       Waiting     Closed by peer

Routes:

    qpid-route route map A

    Finding Linked Brokers:
        A:port... Ok
        B:port... Ok

    Dynamic Routes:
        none found

    Static Routes:

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


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




From:   Ilyushonak Barys <Barys_Ilyushonak@troika.ru>
To:     "users@qpid.apache.org" <users@qpid.apache.org>
Date:   06/30/2011 02:31 AM
Subject:        RE: Federation - trouble-shooting



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: DJohnson@princeton.com [mailto:DJohnson@princeton.com]
Sent: Thursday, June 30, 2011 2:17 AM
To: users@qpid.apache.org
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:users-subscribe@qpid.apache.org





_______________________________________________________

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:users-subscribe@qpid.apache.org




_______________________________________________________

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:users-subscribe@qpid.apache.org




_______________________________________________________

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:users-subscribe@qpid.apache.org




_______________________________________________________

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:users-subscribe@qpid.apache.org


_______________________________________________________

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:users-subscribe@qpid.apache.org


Mime
View raw message