XMLWordPrintable

Details

    • Bug
    • Resolution: Done
    • Critical
    • 7.0.0.CR1
    • 7.0.0.Beta3
    • EJB
    • None
    • Hide

      Run any EJB 3 application, where you ramp up users quickly (in my test its 100 users per second), and you should see this.

      Show
      Run any EJB 3 application, where you ramp up users quickly (in my test its 100 users per second), and you should see this.

    Description

      When running my performance tests, as the first run, from a clean boot kicks off, and the number of users ramps up, I get from one to five of the following exceptions, that cause the transactions to fail:

      13:03:05,652 ERROR [org.jboss.ejb3.tx2.impl.CMTTxInterceptor] (http-192.168.1.22-192.168.1.22-8080-3) javax.ejb.EJBTransactionRolledbackException: java.lang.IllegalAccessException: Class org.jboss.invocation.proxy.ProxyFactory can not access a member of class services.ejb.DistributionCenterManager$$ee$proxy0 with modifiers "private"
      13:03:05,656 ERROR [org.apache.catalina.core.ContainerBase.[jboss.web].[localhost].[/Order].[NewOrder]] (http-192.168.1.22-192.168.1.22-8080-3) Servlet.service() for servlet NewOrder threw exception: javax.ejb.EJBTransactionRolledbackException: java.lang.IllegalAccessException: Class org.jboss.invocation.proxy.ProxyFactory can not access a member of class services.ejb.DistributionCenterManager$$ee$proxy0 with modifiers "private"
      at org.jboss.ejb3.tx2.impl.CMTTxInterceptor.handleInCallerTx(CMTTxInterceptor.java:176)
      at org.jboss.ejb3.tx2.impl.CMTTxInterceptor.invokeInCallerTx(CMTTxInterceptor.java:266)
      at org.jboss.ejb3.tx2.impl.CMTTxInterceptor.required(CMTTxInterceptor.java:396)
      at org.jboss.ejb3.tx2.impl.CMTTxInterceptor.invoke(CMTTxInterceptor.java:248)
      at org.jboss.as.ejb3.tx.CMTTxInterceptor.processInvocation(CMTTxInterceptor.java:47)
      at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:239)
      at org.jboss.as.ejb3.component.session.SessionInvocationContextInterceptor.processInvocation(SessionInvocationContextInterceptor.java:53)
      at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:239)
      at org.jboss.invocation.ChainedInterceptor.processInvocation(ChainedInterceptor.java:61)
      at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:239)
      at org.jboss.as.ejb3.component.session.SessionBeanComponent$3.processInvocation(SessionBeanComponent.java:217)
      at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:239)
      at org.jboss.invocation.ChainedInterceptor.processInvocation(ChainedInterceptor.java:61)
      at org.jboss.as.ee.component.ProxyInvocationHandler.invoke(ProxyInvocationHandler.java:78)
      at services.ejb.CustomerManager$$ee$proxy4.findByPrimaryKey(Unknown Source)
      at services.ejb.OrderManagerBean.createOrder(OrderManagerBean.java:47) [OrderManagerEJB.jar:]
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [:1.6.0_20]
      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) [:1.6.0_20]
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) [:1.6.0_20]
      at java.lang.reflect.Method.invoke(Method.java:616) [:1.6.0_20]
      at org.jboss.invocation.MethodInvokingInterceptor.processInvocation(MethodInvokingInterceptor.java:54)
      at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:239)
      at org.jboss.as.jpa.interceptor.SBInvocationInterceptor.processInvocation(SBInvocationInterceptor.java:41) [jboss-as-jpa-7.0.0.Beta3.jar:7.0.0.Beta3]
      at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:239)
      at org.jboss.invocation.ChainedInterceptor.processInvocation(ChainedInterceptor.java:61)
      at org.jboss.as.ee.component.DispatcherInterceptor.processInvocation(DispatcherInterceptor.java:47)
      at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:239)
      at org.jboss.as.ejb3.component.pool.PooledInstanceInterceptor.processInvocation(PooledInstanceInterceptor.java:51)
      at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:239)
      at org.jboss.invocation.InterceptorContext$Invocation.proceed(InterceptorContext.java:296)
      at org.jboss.ejb3.tx2.impl.CMTTxInterceptor.invokeInOurTx(CMTTxInterceptor.java:286)
      at org.jboss.ejb3.tx2.impl.CMTTxInterceptor.required(CMTTxInterceptor.java:392)
      at org.jboss.ejb3.tx2.impl.CMTTxInterceptor.invoke(CMTTxInterceptor.java:248)
      at org.jboss.as.ejb3.tx.CMTTxInterceptor.processInvocation(CMTTxInterceptor.java:47)
      at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:239)
      at org.jboss.as.ejb3.component.session.SessionInvocationContextInterceptor.processInvocation(SessionInvocationContextInterceptor.java:53)
      at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:239)
      at org.jboss.invocation.ChainedInterceptor.processInvocation(ChainedInterceptor.java:61)
      at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:239)
      at org.jboss.as.ejb3.component.session.SessionBeanComponent$3.processInvocation(SessionBeanComponent.java:217)
      at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:239)
      at org.jboss.invocation.ChainedInterceptor.processInvocation(ChainedInterceptor.java:61)
      at org.jboss.as.ee.component.ProxyInvocationHandler.invoke(ProxyInvocationHandler.java:78)
      at services.ejb.OrderManager$$ee$proxy2.createOrder(Unknown Source)
      at services.web.NewOrderServlet.doPost(NewOrderServlet.java:128) [classes:]
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:754) [jboss-servlet-api_3.0_spec-1.0.0.Final.jar:1.0.0.Final]
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:847) [jboss-servlet-api_3.0_spec-1.0.0.Final.jar:1.0.0.Final]
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:324) [jbossweb-7.0.0.Beta11.jar:7.0.0.Beta3]
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:242) [jbossweb-7.0.0.Beta11.jar:7.0.0.Beta3]
      at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:275) [jbossweb-7.0.0.Beta11.jar:7.0.0.Beta3]
      at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:161) [jbossweb-7.0.0.Beta11.jar:7.0.0.Beta3]
      at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:154) [jbossweb-7.0.0.Beta11.jar:7.0.0.Beta3]
      at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) [jbossweb-7.0.0.Beta11.jar:7.0.0.Beta3]
      at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) [jbossweb-7.0.0.Beta11.jar:7.0.0.Beta3]
      at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:362) [jbossweb-7.0.0.Beta11.jar:7.0.0.Beta3]
      at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:877) [jbossweb-7.0.0.Beta11.jar:7.0.0.Beta3]
      at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:658) [jbossweb-7.0.0.Beta11.jar:7.0.0.Beta3]
      at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:951) [jbossweb-7.0.0.Beta11.jar:7.0.0.Beta3]
      at java.lang.Thread.run(Thread.java:636) [:1.6.0_20]
      Caused by: java.lang.RuntimeException: java.lang.IllegalAccessException: Class org.jboss.invocation.proxy.ProxyFactory can not access a member of class services.ejb.DistributionCenterManager$$ee$proxy0 with modifiers "private"
      at org.jboss.invocation.proxy.ProxyFactory.setInvocationHandler(ProxyFactory.java:405)
      at org.jboss.invocation.proxy.ProxyFactory.newInstance(ProxyFactory.java:318)
      at org.jboss.as.ee.component.ComponentView$1.getInstance(ComponentView.java:68)
      at org.jboss.as.ee.component.AbstractResourceInjection.inject(AbstractResourceInjection.java:54)
      at org.jboss.as.ee.component.AbstractComponent.applyInjections(AbstractComponent.java:238)
      at org.jboss.as.ejb3.component.session.SessionBeanComponent.applyInjections(SessionBeanComponent.java:114)
      at org.jboss.as.ee.component.AbstractComponent.createInstance(AbstractComponent.java:143)
      at org.jboss.as.ejb3.component.stateless.StatelessSessionComponent.createInstance(StatelessSessionComponent.java:80)
      at org.jboss.as.ejb3.component.stateless.StatelessSessionComponent$1.create(StatelessSessionComponent.java:65)
      at org.jboss.as.ejb3.component.stateless.StatelessSessionComponent$1.create(StatelessSessionComponent.java:62)
      at org.jboss.ejb3.pool.AbstractPool.create(AbstractPool.java:65)
      at org.jboss.ejb3.pool.strictmax.StrictMaxPool.get(StrictMaxPool.java:145)
      at org.jboss.as.ejb3.component.pool.PooledInstanceInterceptor.processInvocation(PooledInstanceInterceptor.java:48)
      at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:239)
      at org.jboss.invocation.InterceptorContext$Invocation.proceed(InterceptorContext.java:296)
      at org.jboss.ejb3.tx2.impl.CMTTxInterceptor.invokeInCallerTx(CMTTxInterceptor.java:262)
      ... 57 more
      Caused by: java.lang.IllegalAccessException: Class org.jboss.invocation.proxy.ProxyFactory can not access a member of class services.ejb.DistributionCenterManager$$ee$proxy0 with modifiers "private"
      at sun.reflect.Reflection.ensureMemberAccess(Reflection.java:95) [:1.6.0_20]
      at java.lang.reflect.Field.doSecurityCheck(Field.java:978) [:1.6.0_20]
      at java.lang.reflect.Field.getFieldAccessor(Field.java:914) [:1.6.0_20]
      at java.lang.reflect.Field.set(Field.java:675) [:1.6.0_20]
      at org.jboss.invocation.proxy.ProxyFactory.setInvocationHandler(ProxyFactory.java:401)
      ... 72 more

      Once these happen, it never happens again, and the run completes as normal. Subsequent runs, with the server warm don't exhibit this problem, which I would expect since it seems to be a problem with the initial proxy.

      Attachments

        1. EJB3OrderStressTest.jmx
          233 kB
          Andrig Miller
        2. mysqlas7module.tar.gz
          768 kB
          Andrig Miller
        3. OrderManagerApp.ear
          98 kB
          Andrig Miller
        4. standalone.xml
          17 kB
          Andrig Miller

        Activity

          People

            dlloyd@redhat.com David Lloyd
            rhn-engineering-anmiller Andrig Miller (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: