[ https://issues.apache.org/jira/browse/TOMEE-2044?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Lars Herschke updated TOMEE-2044: --------------------------------- Fix Version/s: 7.0.8 > threadPool-queue (in ServicePool) from ejbd-Service is never processed > ----------------------------------------------------------------------- > > Key: TOMEE-2044 > URL: https://issues.apache.org/jira/browse/TOMEE-2044 > Project: TomEE > Issue Type: Bug > Components: TomEE Core Server > Affects Versions: 1.7.4, 1.7.5 > Environment: FreeBSD 10.3-STABLE amd64 > openjdk8-8.131.11 > Reporter: Lars Herschke > Priority: Major > Fix For: 7.0.8 > > > If you have many requests to your ejbd-service the queue from the threadPool > in ServicePool.java is filled. This queue is never processed depending on > your server config. If you have only ejbd-service enabled and the services > admin, ejbds and httpejbd are disabled all is fine. If you have two or more > of these services enabled the issue could occur. The reason is the following. > KeepAliveServer.java has the following line to get the queue. > final ServicePool incoming = > SystemInstance.get().getComponent(ServicePool.class); > SystemInstance.java hold components in a HahMap with the class type as key. > On server-startup the above named services are initalized in > ServiceManager.manage(...). This method instances new ServicePool for this > services. Each ServicePool-instance calls in his constructor > SystemInstance.get().setComponent(ServicePool.class, this);. > Every other call of setComponent replace the old entry in the components > HashMap. So KeepAliveServer gets always the queue of the last initalized > service. > Workaround: > Use only one of the four above named services > or > set threadsCore for your services at least as high, that the queue is never > used. -- This message was sent by Atlassian Jira (v8.3.4#803005)