2 Replies Latest reply on Mar 18, 2009 6:01 AM by vinodhkumar srinivasan

    JMS connection reset does not happen because of object lock

    vinodhkumar srinivasan Newbie

      Hello Team,

      The JMS connection pool would not get cleared, because the GenericKeyedObjectPool.clear is Looked by some other thread and waiting for some other thread object to be notified. So all the request to JMS reset are keep on waiting, Until the server itself gets restarted. This issue is often happening and we need to bounce the server in interim intervals.

      Jboss server version: jboss-eap-4.2

      JMS messaging version: jboss-messaging-1.4.0.SP1


      Please suggest whether this is known issue and are there any fixes on the upgraded releases?

      Your help is highly appreciated

      Thread dump for the reference:
      
      -----------------------------------------------------------------------------------
      Object blocked state:
      java.lang.Thread.run(Thread.java:595)
      Thread: http-appllm01-t2%2F10.10.64.91-8080-2 : priority:5, demon:true, threadId:11170, threadState:BLOCKED, lockName:org.apache.commons.pool.impl.GenericKeyedObjectPool@1eef0d6
      org.apache.commons.pool.impl.GenericKeyedObjectPool.clear(GenericKeyedObjectPool.java:1061)
      
      
      
      
      com.travelclick.common.jms.JMSSessionPool.resetAll(Unknown Source)
      
      
      
      
      com.travelclick.common.jms.JMSSessionPoolControl.resetAll(Unknown Source)
      
      
      
      
      sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      
      
      
      
      sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
      
      
      
      
      sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      
      
      
      
      java.lang.reflect.Method.invoke(Method.java:585)
      
      
      
      
      org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
      
      
      
      
      org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
      
      
      
      
      org.jboss.mx.server.Invocation.invoke(Invocation.java:86)
      
      
      
      
      org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
      
      
      
      
      org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
      
      
      
      
      org.jboss.system.server.jmx.LazyMBeanServer.invoke(LazyMBeanServer.java:291)
      
      
      
      
      org.jboss.jmx.adaptor.control.Server.invokeOpByName(Server.java:258)
      
      
      
      
      org.jboss.jmx.adaptor.control.Server.invokeOp(Server.java:223)
      
      
      
      
      org.jboss.jmx.adaptor.html.HtmlAdaptorServlet.invokeOp(HtmlAdaptorServlet.java:262)
      
      
      
      
      org.jboss.jmx.adaptor.html.HtmlAdaptorServlet.processRequest(HtmlAdaptorServlet.java:100)
      
      
      
      
      org.jboss.jmx.adaptor.html.HtmlAdaptorServlet.doPost(HtmlAdaptorServlet.java:82)
      
      
      
      
      javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
      
      
      
      
      javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
      
      
      
      
      org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
      
      
      
      
      org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      
      
      
      
      org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
      
      
      
      
      org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      
      
      
      
      org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      
      
      
      
      org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
      
      
      
      
      org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
      
      
      
      
      org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:179)
      
      
      
      
      org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:525)
      
      
      
      
      org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:84)
      
      
      
      
      org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
      
      
      
      
      org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)
      
      
      
      
      org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:157)
      
      
      
      
      org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
      
      
      
      
      org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:241)
      
      
      
      
      org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
      
      
      
      
      org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:580)
      
      
      
      
      org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
      
      ---------------------------------------------------------------------------------------
      Object waiting trace:
      Thread: http-appllm01-t2%2F10.10.64.91-8080-1 : priority:5, demon:true, threadId:11169, threadState:WAITING, lockName:java.lang.Object@b409cb
      java.lang.Object.wait(Native Method)
      
      
      
      
      java.lang.Object.wait(Object.java:474)
      
      
      
      
      org.jboss.jms.server.endpoint.ServerSessionEndpoint.closing(ServerSessionEndpoint.java:356)
      
      
      
      
      org.jboss.jms.server.endpoint.advised.SessionAdvised.org$jboss$jms$server$endpoint$advised$SessionAdvised$closing$aop(SessionAdvised.java:77)
      
      
      
      
      org.jboss.jms.server.endpoint.advised.SessionAdvised$closing_2473194355759371067.invokeNext(SessionAdvised$closing_2473194355759371067.java)
      
      
      
      
      org.jboss.jms.server.container.ServerLogInterceptor.invoke(ServerLogInterceptor.java:105)
      
      
      
      
      org.jboss.jms.server.endpoint.advised.SessionAdvised$closing_2473194355759371067.invokeNext(SessionAdvised$closing_2473194355759371067.java)
      
      
      
      
      org.jboss.jms.server.endpoint.advised.SessionAdvised.closing(SessionAdvised.java)
      
      
      
      
      org.jboss.jms.wireformat.ClosingRequest.serverInvoke(ClosingRequest.java:68)
      
      
      
      
      org.jboss.jms.server.remoting.JMSServerInvocationHandler.invoke(JMSServerInvocationHandler.java:143)
      
      
      
      
      org.jboss.remoting.ServerInvoker.invoke(ServerInvoker.java:769)
      
      
      
      
      org.jboss.remoting.transport.local.LocalClientInvoker.invoke(LocalClientInvoker.java:101)
      
      
      
      
      org.jboss.remoting.Client.invoke(Client.java:1634)
      
      
      
      
      org.jboss.remoting.Client.invoke(Client.java:548)
      
      
      
      
      org.jboss.remoting.Client.invoke(Client.java:536)
      
      
      
      
      org.jboss.jms.client.delegate.DelegateSupport.doInvoke(DelegateSupport.java:187)
      
      
      
      
      org.jboss.jms.client.delegate.DelegateSupport.doInvoke(DelegateSupport.java:158)
      
      
      
      
      org.jboss.jms.client.delegate.ClientSessionDelegate.org$jboss$jms$client$delegate$ClientSessionDelegate$closing$aop(ClientSessionDelegate.java:159)
      
      
      
      
      org.jboss.jms.client.delegate.ClientSessionDelegate$closing_2473194355759371067.invokeNext(ClientSessionDelegate$closing_2473194355759371067.java)
      
      
      
      
      org.jboss.jms.client.container.SessionAspect.handleClosing(SessionAspect.java:199)
      
      
      
      
      org.jboss.aop.advice.org.jboss.jms.client.container.SessionAspect24.invoke(SessionAspect24.java)
      
      
      
      
      org.jboss.jms.client.delegate.ClientSessionDelegate$closing_2473194355759371067.invokeNext(ClientSessionDelegate$closing_2473194355759371067.java)
      
      
      
      
      org.jboss.jms.client.container.FailoverValveInterceptor.invoke(FailoverValveInterceptor.java:92)
      
      
      
      
      org.jboss.aop.advice.PerInstanceInterceptor.invoke(PerInstanceInterceptor.java:105)
      
      
      
      
      org.jboss.jms.client.delegate.ClientSessionDelegate$closing_2473194355759371067.invokeNext(ClientSessionDelegate$closing_2473194355759371067.java)
      
      
      
      
      org.jboss.jms.client.container.ClosedInterceptor.invoke(ClosedInterceptor.java:170)
      
      
      
      
      org.jboss.aop.advice.PerInstanceInterceptor.invoke(PerInstanceInterceptor.java:105)
      
      
      
      
      org.jboss.jms.client.delegate.ClientSessionDelegate$closing_2473194355759371067.invokeNext(ClientSessionDelegate$closing_2473194355759371067.java)
      
      
      
      
      org.jboss.jms.client.delegate.ClientSessionDelegate.closing(ClientSessionDelegate.java)
      
      
      
      
      org.jboss.jms.client.JBossSession.close(JBossSession.java:174)
      
      
      
      
      com.travelclick.common.jms.JMSSession.releaseJMSConnection(Unknown Source)
      
      
      
      
      com.travelclick.common.jms.JMSSessionPoolFactory.destroyObject(Unknown Source)
      
      
      
      
      org.apache.commons.pool.impl.GenericKeyedObjectPool.clear(GenericKeyedObjectPool.java:1067)
      
      
      
      
      com.travelclick.common.jms.JMSSessionPool.resetAll(Unknown Source)
      
      
      
      
      com.travelclick.common.jms.JMSSessionPoolControl.resetAll(Unknown Source)
      
      
      
      
      sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      
      
      
      
      sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
      
      
      
      
      sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      
      
      
      
      java.lang.reflect.Method.invoke(Method.java:585)
      
      
      
      
      org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
      
      
      
      
      org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
      
      
      
      
      org.jboss.mx.server.Invocation.invoke(Invocation.java:86)
      
      
      
      
      org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
      
      
      
      
      org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
      
      
      
      
      org.jboss.system.server.jmx.LazyMBeanServer.invoke(LazyMBeanServer.java:291)
      
      
      
      
      org.jboss.jmx.adaptor.control.Server.invokeOpByName(Server.java:258)
      
      
      
      
      org.jboss.jmx.adaptor.control.Server.invokeOp(Server.java:223)
      
      
      
      
      org.jboss.jmx.adaptor.html.HtmlAdaptorServlet.invokeOp(HtmlAdaptorServlet.java:262)
      
      
      
      
      org.jboss.jmx.adaptor.html.HtmlAdaptorServlet.processRequest(HtmlAdaptorServlet.java:100)
      
      
      
      
      org.jboss.jmx.adaptor.html.HtmlAdaptorServlet.doPost(HtmlAdaptorServlet.java:82)
      
      
      
      
      javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
      
      
      
      
      javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
      
      
      
      
      org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
      
      
      
      
      org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      
      
      
      
      org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
      
      
      
      
      org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
      
      
      
      
      org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
      
      
      
      
      org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
      
      
      
      
      org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
      
      
      
      
      org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:179)
      
      
      
      
      org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:525)
      
      
      
      
      org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:84)
      
      
      
      
      org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
      
      
      
      
      org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)
      
      
      
      
      org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:157)
      
      
      
      
      org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
      
      
      
      
      org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:241)
      
      
      
      
      org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
      
      
      
      
      org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:580)
      
      
      
      
      org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
      
      --------------------------------------------------------------------------------------------------------