You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@geronimo.apache.org by "Jay D. McHugh (JIRA)" <ji...@apache.org> on 2007/06/22 01:51:26 UTC

[jira] Updated: (GERONIMO-2708) ConcurrentModificationException in ConnectionTracking with Daytrader 1.2 under load

     [ https://issues.apache.org/jira/browse/GERONIMO-2708?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jay D. McHugh updated GERONIMO-2708:
------------------------------------

    Affects Version/s:     (was: 2.0-M5)
                       2.0-M7

> ConcurrentModificationException in ConnectionTracking with Daytrader 1.2 under load
> -----------------------------------------------------------------------------------
>
>                 Key: GERONIMO-2708
>                 URL: https://issues.apache.org/jira/browse/GERONIMO-2708
>             Project: Geronimo
>          Issue Type: Bug
>      Security Level: public(Regular issues) 
>          Components: connector
>    Affects Versions: 1.2, 2.0-M7
>         Environment: Geronimo 1.2 from geronimo/sever/branches/1.2 (01/04/2007)
> RHEL 4
> SUN 1.5.0_10 JDK
>            Reporter: Christopher James Blythe
>            Priority: Blocker
>
> Looks like are some concurrency issues with Connection Tracking in Geronimo 1.2.
> - Built Geronimo from geronimo/sever/branches/1.2 (01/04/2007)
> - Deployed Daytrader (built from geronimo/daytrader/branches/1.2)
> - Stressed "EJB" and "Session to JDBC" mode with multiple clients using load driver
> Both tests resulted in the following exception when more than 1 client was driven.
> NOTE: I went back and double checked on Geronimo 1.1.1 and this does not occur.
> java.util.ConcurrentModificationException
>         at java.util.HashMap$HashIterator.remove(HashMap.java:860)
>         at org.apache.geronimo.connector.outbound.connectiontracking.ConnectionTrackingCoordinator.exit(ConnectionTrackingCoordinator.java:92)
>         at org.apache.geronimo.connector.outbound.connectiontracking.ConnectionTrackingCoordinator$$FastClassByCGLIB$$5d33aabf.invoke (<generated>)
>         at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
>         at org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethodInvoker.java:38)
>         at org.apache.geronimo.gbean.runtime.GBeanOperation.invoke (GBeanOperation.java:122)
>         at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:820)
>         at org.apache.geronimo.gbean.runtime.RawInvoker.invoke(RawInvoker.java:57)
>         at org.apache.geronimo.kernel.basic.RawOperationInvoker.invoke (RawOperationInvoker.java:35)
>         at org.apache.geronimo.kernel.basic.ProxyMethodInterceptor.intercept(ProxyMethodInterceptor.java:96)
>         at org.apache.geronimo.connector.outbound.connectiontracking.ConnectionTracker$$EnhancerByCGLIB$$8f3374f8.exit (<generated>)
>         at org.apache.openejb.NoConnectionEnlistingInterceptor.invoke(NoConnectionEnlistingInterceptor.java:70)
>         at org.apache.openejb.SystemExceptionInterceptor.invoke(SystemExceptionInterceptor.java :35)
>         at org.apache.openejb.security.DefaultSubjectInterceptor.invoke(DefaultSubjectInterceptor.java:49)
>         at org.apache.openejb.slsb.DefaultStatelessEjbContainer.invoke(DefaultStatelessEjbContainer.java :178)
>         at org.apache.openejb.slsb.DefaultStatelessEjbContainer$$FastClassByCGLIB$$7ad7a562.invoke(<generated>)
>         at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
>         at org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke (FastMethodInvoker.java:38)
>         at org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:122)
>         at org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:820)
>         at org.apache.geronimo.gbean.runtime.RawInvoker.invoke(RawInvoker.java:57)
>         at org.apache.geronimo.kernel.basic.RawOperationInvoker.invoke(RawOperationInvoker.java:35)
>         at org.apache.geronimo.kernel.basic.ProxyMethodInterceptor.intercept (ProxyMethodInterceptor.java:96)
>         at org.apache.openejb.StatelessEjbContainer$$EnhancerByCGLIB$$34d791e3.invoke(<generated>)
>         at org.apache.openejb.AbstractEjbDeployment.invoke(AbstractEjbDeployment.java :195)
>         at org.apache.openejb.proxy.EJBMethodInterceptor.intercept(EJBMethodInterceptor.java:145)
>         at org.apache.openejb.proxy.SessionEJBObject$$EnhancerByCGLIB$$3eb3ed90.getQuote(<generated>)
>         at org.apache.geronimo.samples.daytrader.TradeAction.getQuote(TradeAction.java:331)
>         at org.apache.jsp.displayQuote_jsp._jspService(org.apache.jsp.displayQuote_jsp:71)
>         at org.apache.jasper.runtime.HttpJspBase.service (HttpJspBase.java:97)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
>         at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:332)
>         at org.apache.jasper.servlet.JspServlet.serviceJspFile (JspServlet.java:314)
>         at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter (ApplicationFilterChain.java:252)
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
>         at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java :672)
>         at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:574)
>         at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:499)
>         at org.apache.jasper.runtime.JspRuntimeLibrary.include(JspRuntimeLibrary.java:966)
>         at org.apache.jsp.quote_jsp._jspService(org.apache.jsp.quote_jsp:212)
>         at org.apache.jasper.runtime.HttpJspBase.service( HttpJspBase.java:97)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
>         at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:332)
>         at org.apache.jasper.servlet.JspServlet.serviceJspFile (JspServlet.java:314)
>         at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter (ApplicationFilterChain.java:252)
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
>         at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java :672)
>         at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:574)
>         at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:499)
>         at org.apache.geronimo.samples.daytrader.web.TradeServletAction.requestDispatch(TradeServletAction.java:729)
>         at org.apache.geronimo.samples.daytrader.web.TradeServletAction.doQuotes(TradeServletAction.java:583)
>         at org.apache.geronimo.samples.daytrader.web.TradeAppServlet.performTask(TradeAppServlet.java:155)
>         at org.apache.geronimo.samples.daytrader.web.TradeAppServlet.doGet(TradeAppServlet.java:77)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:597)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java :252)
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
>         at org.apache.geronimo.samples.daytrader.web.OrdersAlertFilter.doFilter(OrdersAlertFilter.java:91)
>         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
>         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
>         at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
>         at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
>         at org.apache.geronimo.tomcat.valve.DefaultSubjectValve.invoke (DefaultSubjectValve.java:56)
>         at org.apache.geronimo.tomcat.GeronimoStandardContext$SystemMethodValve.invoke(GeronimoStandardContext.java:326)
>         at org.apache.geronimo.tomcat.valve.GeronimoBeforeAfterValve.invoke (GeronimoBeforeAfterValve.java:47)
>         at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
>         at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
>         at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
>         at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:541)
>         at org.apache.catalina.connector.CoyoteAdapter.service (CoyoteAdapter.java:148)
>         at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
>         at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java :667)
>         at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
>         at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
>         at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
>         at java.lang.Thread.run(Thread.java:595)

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.