[jboss-user] [Installation, Configuration & DEPLOYMENT] - 5.0.0.Beta4 startup performance problem

gcoleman do-not-reply at jboss.com
Thu Mar 27 06:53:54 EDT 2008


I've got an ear with about 30 EJB modules. The modules are either all entity beans or all SLSBs/MDBs (this is to let us migrate session beans to EJB3 without having to do the entities at the same time).

I've got two versions of the same ear: one pre-migration with all EJB2 modules, and one where all the session bean modules have been migrated to EJB3.

On JBoss 5 the mixed EJB2/EJB3 takes a VERY long time to start up  - anywhere between 10 and 30 minutes and is pegged at about 25% CPU for most of that time. The EJB2 only ear takes about 2 minutes.

I've done some thread dumps and the main deployer thread is more often than not here:

  | "main" prio=6 tid=0x044b7430 nid=0x10b4 runnable [0x049cd000..0x049cf9f8]
  |         at java.lang.Throwable.fillInStackTrace(Native Method)
  |         at java.lang.Throwable.<init>(Throwable.java:196)
  |         at java.lang.Exception.<init>(Exception.java:41)
  |         at javax.management.JMException.<init>(JMException.java:35)
  |         at javax.management.OperationsException.<init>(OperationsException.java:36)
  |         at javax.management.MalformedObjectNameException.<init>(MalformedObjectNameException.java:35)
  |         at javax.management.ObjectName.construct(ObjectName.java:393)
  |         at javax.management.ObjectName.<init>(ObjectName.java:1304)
  |         at org.jboss.ejb3.dependency.EjbLinkDemandMetaData$EjbLinkDemandDependencyItem.resolve(EjbLinkDemandMetaData.java:134)
  |         at org.jboss.dependency.plugins.AbstractDependencyInfo.resolveDependencies(AbstractDependencyInfo.java:140)
  |         at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:901)
  |         at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:839)
  |         at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:784)
  |         at org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:622)
  |         at org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:411)
  |         at org.jboss.system.ServiceController.doChange(ServiceController.java:659)
  |         at org.jboss.system.ServiceController.create(ServiceController.java:393)
  |         at org.jboss.system.ServiceController.create(ServiceController.java:358)
  |         at sun.reflect.GeneratedMethodAccessor212.invoke(Unknown Source)
  |         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
  |         at java.lang.reflect.Method.invoke(Method.java:585)
  |         at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:157)
  |         at org.jboss.mx.server.Invocation.dispatch(Invocation.java:96)
  |         at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
  |         at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
  |         at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:668)
  |         at org.jboss.system.ServiceMBeanSupport.create(ServiceMBeanSupport.java:186)
  |         at org.jboss.ejb.EntityContainer.createService(EntityContainer.java:286)
  |         at org.jboss.system.ServiceMBeanSupport.jbossInternalCreate(ServiceMBeanSupport.java:267)
  |         at org.jboss.system.ServiceMBeanSupport.jbossInternalLifecycle(ServiceMBeanSupport.java:243)
  |         at sun.reflect.GeneratedMethodAccessor10.invoke(Unknown Source)
  |         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
  |         at java.lang.reflect.Method.invoke(Method.java:585)
  |         at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:157)
  |         at org.jboss.mx.server.Invocation.dispatch(Invocation.java:96)
  |         at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
  |         at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
  |         at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:668)
  |         at org.jboss.system.microcontainer.ServiceProxy.invoke(ServiceProxy.java:167)
  |         at $Proxy5.create(Unknown Source)
  |         at org.jboss.system.microcontainer.CreateDestroyLifecycleAction.installAction(CreateDestroyLifecycleAction.java:42)
  |         at org.jboss.system.microcontainer.CreateDestroyLifecycleAction.installAction(CreateDestroyLifecycleAction.java:37)
  |         at org.jboss.dependency.plugins.action.SimpleControllerContextAction.simpleInstallAction(SimpleControllerContextAction.java:62)
  |         at org.jboss.dependency.plugins.action.AccessControllerContextAction.install(AccessControllerContextAction.java:71)
  |         at org.jboss.dependency.plugins.AbstractControllerContextActions.install(AbstractControllerContextActions.java:51)
  |         at org.jboss.dependency.plugins.AbstractControllerContext.install(AbstractControllerContext.java:327)
  |         at org.jboss.system.microcontainer.ServiceControllerContext.install(ServiceControllerContext.java:255)
  |         at org.jboss.dependency.plugins.AbstractController.install(AbstractController.java:1309)
  |         at org.jboss.dependency.plugins.AbstractController.incrementState(AbstractController.java:734)
  |         at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:862)
  |         at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:784)
  |         at org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:622)
  |         at org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:411)
  |         at org.jboss.system.ServiceController.doChange(ServiceController.java:659)
  |         at org.jboss.system.ServiceController.create(ServiceController.java:393)
  |         at sun.reflect.GeneratedMethodAccessor211.invoke(Unknown Source)
  |         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
  |         at java.lang.reflect.Method.invoke(Method.java:585)
  |         at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:157)
  |         at org.jboss.mx.server.Invocation.dispatch(Invocation.java:96)
  |         at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
  |         at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
  |         at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:668)
  |         at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:210)
  |         at $Proxy306.create(Unknown Source)
  |         at org.jboss.ejb.EjbModule.createService(EjbModule.java:408)
  |         at org.jboss.system.ServiceMBeanSupport.jbossInternalCreate(ServiceMBeanSupport.java:267)
  |         at org.jboss.system.ServiceMBeanSupport.jbossInternalLifecycle(ServiceMBeanSupport.java:243)
  |         at sun.reflect.GeneratedMethodAccessor10.invoke(Unknown Source)
  |         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
  |         at java.lang.reflect.Method.invoke(Method.java:585)
  |         at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:157)
  |         at org.jboss.mx.server.Invocation.dispatch(Invocation.java:96)
  |         at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
  |         at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
  |         at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:668)
  |         at org.jboss.system.microcontainer.ServiceProxy.invoke(ServiceProxy.java:167)
  |         at $Proxy5.create(Unknown Source)
  |         at org.jboss.system.microcontainer.CreateDestroyLifecycleAction.installAction(CreateDestroyLifecycleAction.java:42)
  |         at org.jboss.system.microcontainer.CreateDestroyLifecycleAction.installAction(CreateDestroyLifecycleAction.java:37)
  |         at org.jboss.dependency.plugins.action.SimpleControllerContextAction.simpleInstallAction(SimpleControllerContextAction.java:62)
  |         at org.jboss.dependency.plugins.action.AccessControllerContextAction.install(AccessControllerContextAction.java:71)
  |         at org.jboss.dependency.plugins.AbstractControllerContextActions.install(AbstractControllerContextActions.java:51)
  |         at org.jboss.dependency.plugins.AbstractControllerContext.install(AbstractControllerContext.java:327)
  |         at org.jboss.system.microcontainer.ServiceControllerContext.install(ServiceControllerContext.java:255)
  |         at org.jboss.dependency.plugins.AbstractController.install(AbstractController.java:1309)
  |         at org.jboss.dependency.plugins.AbstractController.incrementState(AbstractController.java:734)
  |         at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:862)
  |         at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:784)
  |         at org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:622)
  |         at org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:411)
  |         at org.jboss.system.ServiceController.doChange(ServiceController.java:659)
  |         at org.jboss.system.ServiceController.create(ServiceController.java:393)
  |         at org.jboss.system.ServiceController.create(ServiceController.java:358)
  |         at org.jboss.system.deployers.ServiceDeployer.create(ServiceDeployer.java:145)
  |         at org.jboss.system.deployers.ServiceDeployer.deploy(ServiceDeployer.java:105)
  |         at org.jboss.system.deployers.ServiceDeployer.deploy(ServiceDeployer.java:46)
  |         at org.jboss.deployers.spi.deployer.helpers.AbstractSimpleRealDeployer.internalDeploy(AbstractSimpleRealDeployer.java:65)
  |         at org.jboss.deployers.spi.deployer.helpers.AbstractRealDeployer.deploy(AbstractRealDeployer.java:50)
  |         at org.jboss.deployers.plugins.deployers.DeployerWrapper.deploy(DeployerWrapper.java:169)
  |         at org.jboss.deployers.plugins.deployers.DeployersImpl.doInstallParentFirst(DeployersImpl.java:853)
  |         at org.jboss.deployers.plugins.deployers.DeployersImpl.doInstallParentFirst(DeployersImpl.java:874)
  |         at org.jboss.deployers.plugins.deployers.DeployersImpl.doInstallParentFirst(DeployersImpl.java:906)
  |         at org.jboss.deployers.plugins.deployers.DeployersImpl.install(DeployersImpl.java:794)
  |         at org.jboss.dependency.plugins.AbstractControllerContext.install(AbstractControllerContext.java:327)
  |         at org.jboss.dependency.plugins.AbstractController.install(AbstractController.java:1309)
  |         at org.jboss.dependency.plugins.AbstractController.incrementState(AbstractController.java:734)
  |         at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:862)
  |         at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:784)
  |         at org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:622)
  |         at org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:411)
  |         at org.jboss.deployers.plugins.deployers.DeployersImpl.process(DeployersImpl.java:498)
  |         at org.jboss.deployers.plugins.main.MainDeployerImpl.process(MainDeployerImpl.java:506)
  |         at org.jboss.system.server.profileservice.ProfileServiceBootstrap.loadProfile(ProfileServiceBootstrap.java:246)
  |         at org.jboss.system.server.profileservice.ProfileServiceBootstrap.start(ProfileServiceBootstrap.java:131)
  |         at org.jboss.bootstrap.AbstractServerImpl.start(AbstractServerImpl.java:408)
  |         at org.jboss.Main.boot(Main.java:208)
  |         at org.jboss.Main$1.run(Main.java:534)
  |         at java.lang.Thread.run(Thread.java:595)
  | 

The deployment itself does not succeed because of some dependency problems between beans - I don't know if this is a problem with our deployment descriptors and annotations or a JBoss problem.



  | 10:50:12,829 ERROR [ProfileServiceBootstrap] [main] Failed to load profile: Summary of incomplete deployments (SEE PREVIOUS ERRORS FOR DETAILS):
  | 
  | *** CONTEXTS MISSING DEPENDENCIES: Name -> Dependency{Required State:Actual State}
  | 
  | jboss.j2ee:ear=app.ear,jar=framework-ejbs.jar,name=UpgradeManager,service=EJB3
  |  -> <UNKNOWN>{Described:** UNRESOLVED Demands 'jboss.j2ee:ear=app.ear,name=UserProfile,service=EJB3,* **}
  |  -> <UNKNOWN>{Described:** UNRESOLVED Demands 'jboss.ejb:service=EJBTimerService **}
  |  -> <UNKNOWN>{Described:** UNRESOLVED Demands 'jboss.j2ee:ear=app.ear,name=DownloadManager,service=EJB3,* **}
  |  -> <UNKNOWN>{Described:** UNRESOLVED Demands 'jboss.j2ee:ear=app.ear,name=ClientDeviceManager,service=EJB3,* **}
  | ....
  | 10:50:13,273 INFO  [ServerImpl] [main] JBoss (Microcontainer) [5.0.0.Beta4 (build: SVNTag=
  | JBoss_5_0_0_Beta4 date=200802091115)] Started in 21m:42s:973ms
  | 

Regardless, it shouldn't take this long, should it?

View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4139213#4139213

Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4139213



More information about the jboss-user mailing list