activemq-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Oleg Dulin <oleg.du...@gmail.com>
Subject Re: AMQ 5.6 network of broker -- temp destinations don't propagate
Date Thu, 04 Apr 2013 14:55:49 GMT
Gary:

Upgraded to 5.8, still having this issue.

Our flow is like this:

Client Foo connects to broker A and publishes a message on a queue, 
expecting a response on a temp destination
Client Bar connects to broker B and receives the message, but when 
trying to respond finds that the temp destination is gone

On 2013-04-04 09:54:54 +0000, Gary Tully said:

> --14dae9340ed36a144a04d985f67f
> 
> Content-Type: text/plain; charset=windows-1252
> 
> Content-Transfer-Encoding: quoted-printable
> 
> 
> 
> how long does the consumer wait for a reply?
> 
> I wonder if the issue is a race between the message with reply to and the
> 
> destination advisory or with destination removal before the reply.
> 
> For 5.8 there was some work on this use case and some additional tests;
> 
> see: https://issues.apache.org/jira/browse/AMQ-4276 and the comments and
> 
> source pane for the relevant commits.
> 
> 
> 
> Is this 5.8, if not can you validate ur use case on 5.8.
> 
> 
> 
> 
> 
> On 3 April 2013 22:33, Oleg Dulin 
> <oleg.dulin@gmail.com> wrote:
> 
> 
> 
> > I am operating a cluster of brokers. Each broker connects to its neighbor=
> 
> s
> 
> > as follows (configuration from one of them):
> 
> >
> 
> > <networkConnectors>
> 
> >                         <networkConnector name=3D"1.connector.2"
> 
> >                                 uri=3D"static:(tcp://192.168.7.**106:3200=
> 
> <http://192.168.7.106:3200>)"
> 
> > />
> 
> >                         <networkConnector name=3D"1.connector.r1"
> 
> >                                 uri=3D"static:(tcp://192.168.3.**38:3300<=
> 
> http://192.168.3.38:3300>)"
> 
> >  />
> 
> > </networkConnectors>
> 
> >
> 
> > I use a request/response pattern like this:
> 
> >
> 
> > final Queue responseQueue =3D this.queueSession.**createTemporaryQueue();
> 
> > requestMessage.setJMSReplyTo(**responseQueue);
> 
> > requestMessage.**setJMSExpiration(120000);
> 
> > final MessageConsumer responseConsumer =3D this.getQueueSession().**creat=
> 
> eConsumer(responseQueue);
> 
> >
> 
> > responseConsumer.**setMessageListener(new MessageListener() {
> 
> > /* =85 */
> 
> > });
> 
> > this.getProducer(queueName).**send(requestMessage);
> 
> >
> 
> > getProducer is a factory method. I cache producers for the same queueName
> 
> > in a hashmap.
> 
> >
> 
> > Anyways, what happens is this. There appears to be a round robin going on=
> 
> ,
> 
> > as I would expect. The broker that the client is connected to works fine,
> 
> > but the other broker has these messages in the logs:
> 
> >
> 
> > 2013-04-03 17:21:15,467 WARN  [ActiveMQ Task-24]
> 
> > org.apache.activemq.broker.**TransportConnection.**serviceException(**Tra=
> 
> nsportConnection.java:271)
> 
> > - Async      error occurred: javax.jms.JMSException: The destination
> 
> > temp-queue://ID:LJLLSC1N3-**55367-1365024072577-1:1:134 does not exist.
> 
> > 5511 javax.jms.JMSException: The destination temp-queue://ID:LJLLSC1N3-**=
> 
> 55367-1365024072577-1:1:134
> 
> > does not exist.
> 
> >
> 
> > I saw some discussion of this on StackOverflow at
> 
> > http://stackoverflow.com/**questions/6432672/activemq-**
> 
> > how-to-handle-broker-**failovers-while-using-**temporary-queues<http://st=
> 
> ackoverflow.com/questions/6432672/activemq-how-to-handle-broker-failovers-w=
> 
> hile-using-temporary-queues>but that scenario doesn't apply to me.
> 
> >
> 
> > The interesting thing is that when I run the client on my laptop,
> 
> > everything works great. When I run the client on the server box -- I star=
> 
> t
> 
> > having issues.
> 
> >
> 
> > --
> 
> > Regards,
> 
> > Oleg Dulin
> 
> > NYC Java Big Data Engineer
> 
> > http://www.olegdulin.com/
> 
> >
> 
> >
> 
> >
> 
> 
> 
> 
> 
> --=20
> 
> http://redhat.com
> 
> http://blog.garytully.com
> 
> 
> 
> --14dae9340ed36a144a04d985f67f--
> 
> 
> 


-- 
Regards,
Oleg Dulin
NYC Java Big Data Engineer
http://www.olegdulin.com/



Mime
View raw message