Are you using the PooledConnectionFactory as that page recommends that I just referred you to?
2009/1/19 omoumen <[email protected]>: > > Yes, we use JmsTemplate102 version JmsTemplate102 of Spring > > > James.Strachan wrote: >> >> Are you using any kind of pooling with Spring? >> >> http://activemq.apache.org/jmstemplate-gotchas.html >> >> 2009/1/19 omoumen <[email protected]>: >>> >>> Our application uses ActiveMQ 4.1.0 for the management of asynchronous >>> web >>> services, for that we have set up a producer and a consumer. The producer >>> send the message to the queue of ActiveMQ and the consumer send the >>> messages >>> in the queue to their destinations. >>> Our problem is in the producer, at the time of the sending to the queue >>> we >>> have the following thread dump: >>> >>> ####<15 janv. 2009 11 h 27 CET> <Error> <WebLogicServer> <wn342> >>> <P3Local> >>> <[ACTIVE] ExecuteThread: '8' for queue: 'weblogic.kernel.Default >>> (self-tuning)'> <<WLS Kernel>> <> <> <1232015262880> <BEA-000337> >>> <[STUCK] >>> ExecuteThread: '7' for queue: 'weblogic.kernel.Default (self-tuning)' has >>> been busy for "643" seconds working on the request "Http Request: >>> /P3NoyauDur/valideEntretien.do", which is more than the configured time >>> (StuckThreadMaxTime) of "600" seconds. Stack trace: >>> Thread-76 "[STUCK] ExecuteThread: '7' for queue: 'weblogic.kernel.Default >>> (self-tuning)'" <alive, in native, suspended, waiting, priority=1, >>> DAEMON> { >>> -- Waiting for notification on: >>> edu.emory.mathcs.backport.java.util.concurrent.locks.cond...@47a4fff[fat >>> lock] >>> java.lang.Object.wait(Object.java:474) >>> >>> edu.emory.mathcs.backport.java.util.concurrent.locks.CondVar.await(CondVar.java:66) >>> >>> edu.emory.mathcs.backport.java.util.concurrent.ArrayBlockingQueue.take(ArrayBlockingQueue.java:313) >>> >>> org.apache.activemq.transport.FutureResponse.getResult(FutureResponse.java:42) >>> >>> org.apache.activemq.transport.ResponseCorrelator.request(ResponseCorrelator.java:74) >>> >>> org.apache.activemq.ActiveMQConnection.syncSendPacket(ActiveMQConnection.java:1166) >>> >>> org.apache.activemq.ActiveMQConnection.ensureConnectionInfoSent(ActiveMQConnection.java:1252) >>> ^-- Holding lock: org.apache.activemq.activemqconnect...@47a500f[thin >>> lock] >>> >>> org.apache.activemq.ActiveMQConnection.createSession(ActiveMQConnection.java:273) >>> >>> org.apache.activemq.ActiveMQConnection.createQueueSession(ActiveMQConnection.java:1121) >>> >>> org.springframework.jms.core.JmsTemplate102.createSession(JmsTemplate102.java:177) >>> org.springframework.jms.core.JmsTemplate.execute(JmsTemplate.java:409) >>> org.springframework.jms.core.JmsTemplate.send(JmsTemplate.java:474) >>> org.springframework.jms.core.JmsTemplate.send(JmsTemplate.java:464) >>> parcours.dude.jmsactivemq102.Producteur.send(Producteur.java:39) >>> parcours.dude.AppelDude.sendToJms(AppelDude.java:87) >>> parcours.dude.AppelDude.call(AppelDude.java:149) >>> >>> parcours.dossier.entretien.ReglesFluxEntretienMAJActionsOffres.envoieFluxActionEntretien(ReglesFluxEntretienMAJActionsOffres.java:188) >>> >>> parcours.dossier.entretien.ReglesFluxEntretienMAJActionsOffres.envoieFlux(ReglesFluxEntretienMAJActionsOffres.java:68) >>> >>> parcours.dossier.entretien.EnregistreEntretienAction.executeAction(EnregistreEntretienAction.java:105) >>> parcours.struts.action.ParcoursAction.perform(ParcoursAction.java:283) >>> >>> org.apache.struts.action.ActionServlet.processActionPerform(ActionServlet.java:1676) >>> >>> parcours.struts.action.ParcoursActionServlet.processActionPerform(ParcoursActionServlet.java:359) >>> >>> org.apache.struts.action.ActionServlet.process(ActionServlet.java:1410) >>> >>> parcours.struts.action.ParcoursActionServlet.service(ParcoursActionServlet.java:204) >>> javax.servlet.http.HttpServlet.service(HttpServlet.java:815) >>> >>> weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:223) >>> >>> weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:107) >>> >>> weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:198) >>> >>> weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:175) >>> >>> weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3365) >>> >>> weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:308) >>> weblogic.security.service.SecurityManager.runAs(Unknown Source) >>> >>> weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2076) >>> >>> weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:1998) >>> >>> weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1331) >>> weblogic.work.ExecuteThread.execute(ExecuteThread.java:197) >>> weblogic.work.ExecuteThread.run(ExecuteThread.java:164) >>> } >>> >>>> >>> ####<15 janv. 2009 11 h 28 CET> <Error> <WebLogicServer> <wn342> >>> <P3Local> >>> <[ACTIVE] ExecuteThread: '8' for queue: 'weblogic.kernel.Default >>> (self-tuning)'> <<WLS Kernel>> <> <> <1232015322895> <BEA-000337> >>> <[STUCK] >>> ExecuteThread: '7' for queue: 'weblogic.kernel.Default (self-tuning)' has >>> been busy for "703" seconds working on the request "Http Request: >>> /P3NoyauDur/valideEntretien.do", which is more than the configured time >>> (StuckThreadMaxTime) of "600" seconds. Stack trace: >>> Thread-76 "[STUCK] ExecuteThread: '7' for queue: 'weblogic.kernel.Default >>> (self-tuning)'" <alive, in native, suspended, waiting, priority=1, >>> DAEMON> { >>> -- Waiting for notification on: >>> edu.emory.mathcs.backport.java.util.concurrent.locks.cond...@47a4fff[fat >>> lock] >>> java.lang.Object.wait(Object.java:474) >>> >>> edu.emory.mathcs.backport.java.util.concurrent.locks.CondVar.await(CondVar.java:66) >>> >>> edu.emory.mathcs.backport.java.util.concurrent.ArrayBlockingQueue.take(ArrayBlockingQueue.java:313) >>> >>> org.apache.activemq.transport.FutureResponse.getResult(FutureResponse.java:42) >>> >>> org.apache.activemq.transport.ResponseCorrelator.request(ResponseCorrelator.java:74) >>> >>> org.apache.activemq.ActiveMQConnection.syncSendPacket(ActiveMQConnection.java:1166) >>> >>> org.apache.activemq.ActiveMQConnection.ensureConnectionInfoSent(ActiveMQConnection.java:1252) >>> ^-- Holding lock: org.apache.activemq.activemqconnect...@47a500f[thin >>> lock] >>> >>> org.apache.activemq.ActiveMQConnection.createSession(ActiveMQConnection.java:273) >>> >>> org.apache.activemq.ActiveMQConnection.createQueueSession(ActiveMQConnection.java:1121) >>> >>> org.springframework.jms.core.JmsTemplate102.createSession(JmsTemplate102.java:177) >>> org.springframework.jms.core.JmsTemplate.execute(JmsTemplate.java:409) >>> org.springframework.jms.core.JmsTemplate.send(JmsTemplate.java:474) >>> org.springframework.jms.core.JmsTemplate.send(JmsTemplate.java:464) >>> parcours.dude.jmsactivemq102.Producteur.send(Producteur.java:39) >>> parcours.dude.AppelDude.sendToJms(AppelDude.java:87) >>> parcours.dude.AppelDude.call(AppelDude.java:149) >>> >>> parcours.dossier.entretien.ReglesFluxEntretienMAJActionsOffres.envoieFluxActionEntretien(ReglesFluxEntretienMAJActionsOffres.java:188) >>> >>> parcours.dossier.entretien.ReglesFluxEntretienMAJActionsOffres.envoieFlux(ReglesFluxEntretienMAJActionsOffres.java:68) >>> >>> parcours.dossier.entretien.EnregistreEntretienAction.executeAction(EnregistreEntretienAction.java:105) >>> parcours.struts.action.ParcoursAction.perform(ParcoursAction.java:283) >>> >>> org.apache.struts.action.ActionServlet.processActionPerform(ActionServlet.java:1676) >>> >>> parcours.struts.action.ParcoursActionServlet.processActionPerform(ParcoursActionServlet.java:359) >>> >>> org.apache.struts.action.ActionServlet.process(ActionServlet.java:1410) >>> >>> parcours.struts.action.ParcoursActionServlet.service(ParcoursActionServlet.java:204) >>> javax.servlet.http.HttpServlet.service(HttpServlet.java:815) >>> >>> weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:223) >>> >>> weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:107) >>> >>> weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:198) >>> >>> weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:175) >>> >>> weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3365) >>> >>> weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:308) >>> weblogic.security.service.SecurityManager.runAs(Unknown Source) >>> >>> weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2076) >>> >>> weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:1998) >>> >>> weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1331) >>> weblogic.work.ExecuteThread.execute(ExecuteThread.java:197) >>> weblogic.work.ExecuteThread.run(ExecuteThread.java:164) >>> } >>> >>> Could help us to solve this problem, very by knowing that this problem n' >>> is >>> not systematic. >>> >>> -- >>> View this message in context: >>> http://www.nabble.com/Lock-in-ActiveMQ-and-Weblogic-tp21542855p21542855.html >>> Sent from the ActiveMQ - Dev mailing list archive at Nabble.com. >>> >>> >> >> >> >> -- >> James >> ------- >> http://macstrac.blogspot.com/ >> >> Open Source Integration >> http://fusesource.com/ >> >> > > -- > View this message in context: > http://www.nabble.com/Lock-in-ActiveMQ-and-Weblogic-tp21542855p21543165.html > Sent from the ActiveMQ - Dev mailing list archive at Nabble.com. > > -- James ------- http://macstrac.blogspot.com/ Open Source Integration http://fusesource.com/
