JBoss EAP 6.1 connector generates CLOSE_WAIT sockets when used with an executor
Issue
- We have configured our JBoss web subsystem's connector to use an executor for its thread pool. This is a non blocking, bounded queue executor with no hand off executor, for example:
<subsystem xmlns="urn:jboss:domain:threads:1.1">
<thread-factory name="http-connector-factory-a" group-name="http-a" thread-name-pattern="HTTP-%t" />
<bounded-queue-thread-pool name="web-a">
<core-threads count="2"/>
<queue-length count="2"/>
<max-threads count="2"/>
<thread-factory name="http-connector-factory-a"/>
</bounded-queue-thread-pool>
</subsystem>
<subsystem xmlns="urn:jboss:domain:web:1.4" default-virtual-server="default-host" native="false">
<connector name="http" protocol="HTTP/1.1" scheme="http" socket-binding="http" executor="web-a"/>
...
</subsystem>
- When this executor's thread pool and queue is full, JBoss starts generating CLOSE_WAIT sockets for subsequent, additional connections.
Environment
- JBoss Enterprise Application Platform (EAP) 6.1.1 and earlier
Subscriber exclusive content
A Red Hat subscription provides unlimited access to our knowledgebase of over 48,000 articles and solutions.
Welcome! Check out the Getting Started with Red Hat page for quick tours and guides for common tasks.
