[jboss-jira] [JBoss JIRA] (WFLY-9954) Too many services and dependencies created for EJBs

Carlo de Wolf (Jira) issues at jboss.org
Mon Oct 29 06:33:00 EDT 2018


     [ https://issues.jboss.org/browse/WFLY-9954?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Carlo de Wolf reassigned WFLY-9954:
-----------------------------------

    Assignee: Romain Pelisse


> Too many services and dependencies created for EJBs
> ---------------------------------------------------
>
>                 Key: WFLY-9954
>                 URL: https://issues.jboss.org/browse/WFLY-9954
>             Project: WildFly
>          Issue Type: Bug
>          Components: EJB
>            Reporter: David Lloyd
>            Assignee: Romain Pelisse
>            Priority: Critical
>
> If a deployment contains more than 2730 EJBs, the deployment's INSTALL phase will get a stack trace like this:
> {noformat}
> 2018-03-25 08:22:34,115 ERROR [org.jboss.msc.service.fail] (MSC service thread 1-4) MSC000001: Failed to start service jboss.deployment.unit."example.jar".INSTALL: org.jboss.msc.service.StartException in service jboss.deployment.unit."example.jar".INSTALL: WFLYSRV0153: Failed to process phase INSTALL of deployment "example.jar"
>         at org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:154)
>         at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1948)
>         at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1881)
>         at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
>         at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
>         at java.lang.Thread.run(Thread.java:748)
> Caused by: java.lang.IllegalArgumentException: Too many dependencies specified (max is 16383)    .......... (*1)
>         at org.jboss.msc.service.ServiceBuilderImpl.doAddDependency(ServiceBuilderImpl.java:216)
>         at org.jboss.msc.service.ServiceBuilderImpl.addDependenciesNoCheck(ServiceBuilderImpl.java:158)
>         at org.jboss.msc.service.ServiceBuilderImpl.addDependencies(ServiceBuilderImpl.java:152)
>         at org.jboss.msc.service.ServiceBuilderImpl.addDependencies(ServiceBuilderImpl.java:142)
>         at org.jboss.as.naming.deployment.JndiNamingDependencyProcessor.deploy(JndiNamingDependencyProcessor.java:59)
>         at org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:147)
>         ... 5 more
> {noformat}
> The reason is that the INSTALL phase has six additional dependencies per EJB:
> * service jboss.naming.context.java.comp.example.example.<class-name>.InAppClientContainer
> * service jboss.naming.context.java.comp.example.example.<class-name>.InstanceName
> * service jboss.deployment.unit."example.jar".component.<class-name>.JndiBindingsService
> * service jboss.naming.context.java.comp.example.example.<class-name>.UserTransaction
> * service jboss.naming.context.java.comp.example.example.<class-name>.TransactionSynchronizationRegistry
> * service jboss.naming.context.java.comp.example.example.<class-name>.BeanManager
> We probably should not be creating N dependencies per deployment object since all the services of a given kind are always started together.  They could be grouped at a deployment level instead.



--
This message was sent by Atlassian Jira
(v7.12.1#712002)


More information about the jboss-jira mailing list