The timeout happens when the brokers fails to respond to sync operation during the specified time. This could be due to a number of issues.
1. Broker under load and unable to respond in time. 2. The queue is being filled up and the broker applying flow control (what Jakub described). 2. If persistence was used, and if the journal will not respond in time, then the broker is unable to send completions. 3. In rare circumstances, the client threads are blocked and the response from the broker was not processed in time. Have a look at your queues and see if they are filling up. It's mostly like the case Jakub described. Currently the JMS client doesn't play nice with flow control. Regards, Rajith On Fri, Jul 5, 2013 at 4:53 AM, Jakub Scholz <[email protected]> wrote: > Hi Rajib, > > Do you use producer flow control on your queues? This exception: > > javax.jms.JMSException: Exception when sending message:timed out waiting > for completion > at > > org.apache.qpid.client.BasicMessageProducer_0_10.sendMessage(BasicMessageProducer_0_10.java:243) > at > > org.apache.qpid.client.BasicMessageProducer.sendImpl(BasicMessageProducer.java:500) > at > > org.apache.qpid.client.BasicMessageProducer.send(BasicMessageProducer.java:298) > at cz.scholz.PerfTestProducer.main(PerfTestProducer.java:95) > Caused by: org.apache.qpid.transport.SessionException: timed out waiting > for completion > at org.apache.qpid.transport.Session.invoke(Session.java:747) > at org.apache.qpid.transport.Session.invoke(Session.java:627) > at > > org.apache.qpid.transport.SessionInvoker.messageTransfer(SessionInvoker.java:93) > at > > org.apache.qpid.client.BasicMessageProducer_0_10.sendMessage(BasicMessageProducer_0_10.java:229) > ... 3 more > > in my experience usually appears when you use the JMS client without the > sync_publish option and the broker applies the flow control. The JMS client > doesn't work always well with the producer flow control of the C++ broker - > I believe you might find some more technical details in the archive of this > mailing list. > > Thanks & Regards > Jakub > > > > On Fri, Jul 5, 2013 at 8:50 AM, <[email protected]> wrote: > > > Hi All, > > > > I am using qpid 0.22, JMS client and C++ broker. > > > > > > Doing some stress test with queue producers and consumers, Java producer > > using JMS qpid library fails to publish a message, logging: > > "javax.jms.JMSException: Exception when sending message: timed out > waiting > > for completion" exception. > > > > I am running both producer and consumer on the same Linux RHEL 5 host. > > > > It sounds like a slow consumer issue, which is unexpected on the same > host. > > > > Can you someone please let me know why is this happening ? > > > > Thanks > > > > Rajib > > > > > > > > > > > > > > > > > > > > > > > > > > _______________________________________________ > > > > This message is for information purposes only, it is not a > recommendation, > > advice, offer or solicitation to buy or sell a product or service nor an > > official confirmation of any transaction. It is directed at persons who > are > > professionals and is not intended for retail customer use. Intended for > > recipient only. This message is subject to the terms at: > > www.barclays.com/emaildisclaimer. > > > > For important disclosures, please see: > > www.barclays.com/salesandtradingdisclaimer regarding market commentary > > from Barclays Sales and/or Trading, who are active market participants; > and > > in respect of Barclays Research, including disclosures relating to > specific > > issuers, please see http://publicresearch.barclays.com. > > > > _______________________________________________ > > >
