geronimo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Christopher Blythe" <cjblyth...@gmail.com>
Subject Re: DayTrader 2.0 updates for full Java EE5
Date Wed, 25 Jul 2007 18:05:27 GMT
Just finished running some load tests against the full EJB 3 mode that I
added. Pointed my datasources to a DB2 database. Ran fine for a while under
low load; however, as the load increased started running into some
exceptions from OpenJPA. A JIRA has already been opened by the WebSphere
folks who are seeing the same thing.

https://issues.apache.org/jira/browse/OPENJPA-295

In the JIRA, Rob mentions that this was not a problem in earlier versions.

17:46:34,938 ERROR [OpenEJB] The bean instances business method encountered
a system exception: TradeSLSBBean.getClosedOrders - error
javax.ejb.EJBException: TradeSLSBBean.getClosedOrders - error
    at
org.apache.geronimo.samples.daytrader.ejb3.TradeSLSBBean.getClosedOrders(
TradeSLSBBean.java:352)
    at sun.reflect.GeneratedMethodAccessor234.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(
DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:615)
    at
org.apache.openejb.core.interceptor.ReflectionInvocationContext$Invocation.invoke
(ReflectionInvocationContext.java:146)
    at
org.apache.openejb.core.interceptor.ReflectionInvocationContext.proceed(
ReflectionInvocationContext.java:129)
    at org.apache.openejb.core.interceptor.InterceptorStack.invoke(
InterceptorStack.java:67)
    at org.apache.openejb.core.stateless.StatelessContainer._invoke(
StatelessContainer.java:203)
    at org.apache.openejb.core.stateless.StatelessContainer.invoke(
StatelessContainer.java:165)
    at org.apache.openejb.core.ivm.EjbObjectProxyHandler.businessMethod(
EjbObjectProxyHandler.java:211)
    at org.apache.openejb.core.ivm.EjbObjectProxyHandler._invoke(
EjbObjectProxyHandler.java:65)
    at org.apache.openejb.core.ivm.BaseEjbProxyHandler.invoke(
BaseEjbProxyHandler.java:230)
    at org.apache.openejb.util.proxy.Jdk13InvocationHandler.invoke(
Jdk13InvocationHandler.java:49)
    at $Proxy28.getClosedOrders(Unknown Source)
    at org.apache.geronimo.samples.daytrader.TradeAction.getClosedOrders(
TradeAction.java:294)
    at org.apache.geronimo.samples.daytrader.web.OrdersAlertFilter.doFilter(
OrdersAlertFilter.java:76)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(
ApplicationFilterChain.java:235)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(
ApplicationFilterChain.java:206)
    at org.apache.catalina.core.StandardWrapperValve.invoke(
StandardWrapperValve.java:230)
    at org.apache.catalina.core.StandardContextValve.invoke(
StandardContextValve.java:175)
    at org.apache.geronimo.tomcat.valve.DefaultSubjectValve.invoke(
DefaultSubjectValve.java:56)
    at
org.apache.geronimo.tomcat.GeronimoStandardContext$SystemMethodValve.invoke(
GeronimoStandardContext.java:351)
    at org.apache.geronimo.tomcat.valve.GeronimoBeforeAfterValve.invoke(
GeronimoBeforeAfterValve.java:47)
    at org.apache.catalina.core.StandardHostValve.invoke(
StandardHostValve.java:128)
    at org.apache.catalina.valves.ErrorReportValve.invoke(
ErrorReportValve.java:104)
    at org.apache.catalina.core.StandardEngineValve.invoke(
StandardEngineValve.java:109)
    at org.apache.catalina.connector.CoyoteAdapter.service(
CoyoteAdapter.java:261)
    at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java
:844)
    at
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(
Http11Protocol.java:581)
    at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java
:447)
    at java.lang.Thread.run(Thread.java:801)
Caused by:
<1.0.0-SNAPSHOT-SNAPSHOT nonfatal general error>
org.apache.openjpa.persistence.PersistenceException: null
    at
org.apache.openjpa.kernel.AbstractBrokerFactory.syncWithManagedTransaction(
AbstractBrokerFactory.java:690)
    at org.apache.openjpa.kernel.BrokerImpl.initialize(BrokerImpl.java:304)
    at org.apache.openjpa.kernel.AbstractBrokerFactory.newBroker(
AbstractBrokerFactory.java:182)
    at org.apache.openjpa.kernel.DelegatingBrokerFactory.newBroker(
DelegatingBrokerFactory.java:142)
    at
org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(
EntityManagerFactoryImpl.java:190)
    at
org.apache.openjpa.persistence.EntityManagerFactoryImpl.createEntityManager(
EntityManagerFactoryImpl.java:55)
    at
org.apache.geronimo.persistence.CMPEntityManagerTxScoped.createEntityManager
(CMPEntityManagerTxScoped.java:74)
    at
org.apache.geronimo.persistence.CMPEntityManagerTxScoped.getEntityManager(
CMPEntityManagerTxScoped.java:55)
    at
org.apache.geronimo.persistence.CMPEntityManagerTxScoped.createNamedQuery(
CMPEntityManagerTxScoped.java:259)
    at
org.apache.geronimo.samples.daytrader.ejb3.TradeSLSBBean.getClosedOrders(
TradeSLSBBean.java:335)
    ... 30 more
Caused by:
java.lang.ArrayIndexOutOfBoundsException
    at java.util.ArrayList.add(ArrayList.java:378)
    at
org.apache.openjpa.kernel.AbstractBrokerFactory.syncWithManagedTransaction(
AbstractBrokerFactory.java:684)
    ... 39 more

On 7/25/07, Christopher Blythe <cjblythe25@gmail.com> wrote:
>
> Matt...
>
> The new stateless session bean that I added does exactly what TradeJPA
> used to do. It's just been updated to an EJB 3 session bean instead of 2.1and also contains
the changes to ensure data consistency.
>
> So basically, the new Session bean that I added  deprecates the original
> TradeJPA.
>
> Chris
>
> On 7/25/07, Jarek Gawor < jgawor@gmail.com> wrote:
> >
> > Do you have any plans for updating the webservices bits from jax-rpc to
> > jax-ws?
> >
> > Jarek
> >
> > On 7/25/07, Christopher Blythe <cjblythe25@gmail.com> wrote:
> > > All,
> > >
> > > As it currently stands, DayTrader 2.0 does not provide what I would
> > consider
> > > a viable showcase application for Java EE 5 technology. The JPA mode
> > that
> > > was added uses EJB3/JPA based entities; however, the mode still lacks
> > a few
> > > key elements...
> > >
> > > - EJB 3 based stateless session bean providing the business logic
> > (current
> > > impl still uses EJB 2.1 session beans)
> > > - EJB 3 based MDBs for Quote streamer and async order processing
> > > - Improvements to JPA mode to ensure data consistency and improve
> > > performance
> > >
> > > I have added a new EJB3 runtime mode that exposes the following...
> > > - TradeSLSBBean (new EJB 3 based session bean for business logic)
> > > - DTBroker3MDB (new EJB 3 based MDB for async order processing)
> > > - DTStreamer3MDB (new EJB 3 based MDB for quote streamer)
> > >
> > > I have made these updates and plan to commit them shortly, I have left
> > the
> > > existing TradeJPA bean as is, in addition to the legacy Direct and EJB
> > 2.1
> > > modes. I have pulled yesterday's build of Geronimo 2.0 and verified
> > that the
> > > new EJB3 mode functionally works along with the legacy modes. The next
> > step
> > > is load testing, so stay tuned...
> > >
> > > Thanks...
> > >
> > >  Chris
> > >
> > > --
> > > "I say never be complete, I say stop being perfect, I say let... lets
> > > evolve, let the chips fall where they may." - Tyler Durden
> >
>
>
>
> --
> "I say never be complete, I say stop being perfect, I say let... lets
> evolve, let the chips fall where they may." - Tyler Durden
>



-- 
"I say never be complete, I say stop being perfect, I say let... lets
evolve, let the chips fall where they may." - Tyler Durden

Mime
View raw message