You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@activemq.apache.org by miguelhenley <mh...@datamag.com.br> on 2013/03/28 13:16:55 UTC

Messages lost when a broker forward messages to another broker

I have configurated two brokers in a Wide Area Network: Brokers A and B. All
messages sent to a queue in Broker A need to be forward to Broker B in order
to be consumed by a consumer connected in Broker B. Broker A and Broker B
are located in different geographic locations.

This works fine but, for testing purposes, I created a producer to send a
lot of messages to Broker A, let's say 1000 messages. I can see, via web
console, the messages gradually arriving in Broker B. Before all messages
arrive in Broker B, if I suddenly break the connection (let's say stopping
Broker B) and, after that, restart broker B, I can see that the forward
process continues - I mean Broker B continues to receive the messages.
Unfortunatelly, some messages are lost (3 or 4 messages, for example). I
know this beacause for each message sent to the queue by the proceducer, I
have tagged it with a sequential number and put the sequence as a property
in order to check it on the consumer side.

I repeat this task sometimes to confirm and, unfortunatelly I lost some
messages if I break a connection in broker B during the forward action.

On the Broker A side, I have the following configuration inside the XML
file:

<networkConnectors>
    <networkConnector
uri=&quot;static:(tcp://&lt;&lt;IP-of-broker-B>>:61616)">
        <staticallyIncludedDestinations>
            <queue physicalName="MyQueue"/>
        </staticallyIncludedDestinations>
    </networkConnector>
</networkConnectors>

Do I have to configure anything else? I think that when the messages are
forward, a transaction mechanism (between the brokers A and B) must be in
place in order to avoid missing messages.

Any help is much appreciate to solve this problem.

Thanks,
Miguel




--
View this message in context: http://activemq.2283324.n4.nabble.com/Messages-lost-when-a-broker-forward-messages-to-another-broker-tp4665250.html
Sent from the ActiveMQ - User mailing list archive at Nabble.com.

Re: Messages lost when a broker forward messages to another broker

Posted by Johan Edstrom <jo...@acj-consulting.com>.
Define what breaking means too?
Are you for example multi-threading AUTO-ACKED clients and 
don't deal correctly with exceptions?


On Mar 29, 2013, at 10:24 AM, Christian Posta <ch...@gmail.com> wrote:

> Are the messages that are supposed to be forwarded sent persistent by the
> original producer?
> 
> 
> On Thu, Mar 28, 2013 at 5:16 AM, miguelhenley <mh...@datamag.com.br>wrote:
> 
>> I have configurated two brokers in a Wide Area Network: Brokers A and B.
>> All
>> messages sent to a queue in Broker A need to be forward to Broker B in
>> order
>> to be consumed by a consumer connected in Broker B. Broker A and Broker B
>> are located in different geographic locations.
>> 
>> This works fine but, for testing purposes, I created a producer to send a
>> lot of messages to Broker A, let's say 1000 messages. I can see, via web
>> console, the messages gradually arriving in Broker B. Before all messages
>> arrive in Broker B, if I suddenly break the connection (let's say stopping
>> Broker B) and, after that, restart broker B, I can see that the forward
>> process continues - I mean Broker B continues to receive the messages.
>> Unfortunatelly, some messages are lost (3 or 4 messages, for example). I
>> know this beacause for each message sent to the queue by the proceducer, I
>> have tagged it with a sequential number and put the sequence as a property
>> in order to check it on the consumer side.
>> 
>> I repeat this task sometimes to confirm and, unfortunatelly I lost some
>> messages if I break a connection in broker B during the forward action.
>> 
>> On the Broker A side, I have the following configuration inside the XML
>> file:
>> 
>> <networkConnectors>
>>    <networkConnector
>> uri=&quot;static:(tcp://&lt;&lt;IP-of-broker-B>>:61616)">
>>        <staticallyIncludedDestinations>
>>            <queue physicalName="MyQueue"/>
>>        </staticallyIncludedDestinations>
>>    </networkConnector>
>> </networkConnectors>
>> 
>> Do I have to configure anything else? I think that when the messages are
>> forward, a transaction mechanism (between the brokers A and B) must be in
>> place in order to avoid missing messages.
>> 
>> Any help is much appreciate to solve this problem.
>> 
>> Thanks,
>> Miguel
>> 
>> 
>> 
>> 
>> --
>> View this message in context:
>> http://activemq.2283324.n4.nabble.com/Messages-lost-when-a-broker-forward-messages-to-another-broker-tp4665250.html
>> Sent from the ActiveMQ - User mailing list archive at Nabble.com.
>> 
> 
> 
> 
> -- 
> *Christian Posta*
> http://www.christianposta.com/blog
> twitter: @christianposta


Re: Messages lost when a broker forward messages to another broker

Posted by Christian Posta <ch...@gmail.com>.
Are the messages that are supposed to be forwarded sent persistent by the
original producer?


On Thu, Mar 28, 2013 at 5:16 AM, miguelhenley <mh...@datamag.com.br>wrote:

> I have configurated two brokers in a Wide Area Network: Brokers A and B.
> All
> messages sent to a queue in Broker A need to be forward to Broker B in
> order
> to be consumed by a consumer connected in Broker B. Broker A and Broker B
> are located in different geographic locations.
>
> This works fine but, for testing purposes, I created a producer to send a
> lot of messages to Broker A, let's say 1000 messages. I can see, via web
> console, the messages gradually arriving in Broker B. Before all messages
> arrive in Broker B, if I suddenly break the connection (let's say stopping
> Broker B) and, after that, restart broker B, I can see that the forward
> process continues - I mean Broker B continues to receive the messages.
> Unfortunatelly, some messages are lost (3 or 4 messages, for example). I
> know this beacause for each message sent to the queue by the proceducer, I
> have tagged it with a sequential number and put the sequence as a property
> in order to check it on the consumer side.
>
> I repeat this task sometimes to confirm and, unfortunatelly I lost some
> messages if I break a connection in broker B during the forward action.
>
> On the Broker A side, I have the following configuration inside the XML
> file:
>
> <networkConnectors>
>     <networkConnector
> uri=&quot;static:(tcp://&lt;&lt;IP-of-broker-B>>:61616)">
>         <staticallyIncludedDestinations>
>             <queue physicalName="MyQueue"/>
>         </staticallyIncludedDestinations>
>     </networkConnector>
> </networkConnectors>
>
> Do I have to configure anything else? I think that when the messages are
> forward, a transaction mechanism (between the brokers A and B) must be in
> place in order to avoid missing messages.
>
> Any help is much appreciate to solve this problem.
>
> Thanks,
> Miguel
>
>
>
>
> --
> View this message in context:
> http://activemq.2283324.n4.nabble.com/Messages-lost-when-a-broker-forward-messages-to-another-broker-tp4665250.html
> Sent from the ActiveMQ - User mailing list archive at Nabble.com.
>



-- 
*Christian Posta*
http://www.christianposta.com/blog
twitter: @christianposta

Re: Messages lost when a broker forward messages to another broker

Posted by Gary Tully <ga...@gmail.com>.
In 5.8 there is a sync send for all messages across the bridge, so they
wait for an send reply before acking. Prior to that non persistent messages
were sent async.


On 28 March 2013 12:16, miguelhenley <mh...@datamag.com.br> wrote:

> I have configurated two brokers in a Wide Area Network: Brokers A and B.
> All
> messages sent to a queue in Broker A need to be forward to Broker B in
> order
> to be consumed by a consumer connected in Broker B. Broker A and Broker B
> are located in different geographic locations.
>
> This works fine but, for testing purposes, I created a producer to send a
> lot of messages to Broker A, let's say 1000 messages. I can see, via web
> console, the messages gradually arriving in Broker B. Before all messages
> arrive in Broker B, if I suddenly break the connection (let's say stopping
> Broker B) and, after that, restart broker B, I can see that the forward
> process continues - I mean Broker B continues to receive the messages.
> Unfortunatelly, some messages are lost (3 or 4 messages, for example). I
> know this beacause for each message sent to the queue by the proceducer, I
> have tagged it with a sequential number and put the sequence as a property
> in order to check it on the consumer side.
>
> I repeat this task sometimes to confirm and, unfortunatelly I lost some
> messages if I break a connection in broker B during the forward action.
>
> On the Broker A side, I have the following configuration inside the XML
> file:
>
> <networkConnectors>
>     <networkConnector
> uri=&quot;static:(tcp://&lt;&lt;IP-of-broker-B>>:61616)">
>         <staticallyIncludedDestinations>
>             <queue physicalName="MyQueue"/>
>         </staticallyIncludedDestinations>
>     </networkConnector>
> </networkConnectors>
>
> Do I have to configure anything else? I think that when the messages are
> forward, a transaction mechanism (between the brokers A and B) must be in
> place in order to avoid missing messages.
>
> Any help is much appreciate to solve this problem.
>
> Thanks,
> Miguel
>
>
>
>
> --
> View this message in context:
> http://activemq.2283324.n4.nabble.com/Messages-lost-when-a-broker-forward-messages-to-another-broker-tp4665250.html
> Sent from the ActiveMQ - User mailing list archive at Nabble.com.
>



-- 
http://redhat.com
http://blog.garytully.com