Camel HTTP endpoint with dynamic URI elements leaves sockets in CLOSE_WAIT state
Issue
A Camel route makes HTTP requests, such that each URI is somewhat different, and specified directly on the endpoint. For example:
<from uri="jms:queue:something">
<!-- process message -->
<recipientList>
http://my-web-server/my-web-service/get-data/${header.id}/value
</recipientList>
Each invocation of the HTTP endpoint leaves a socket on the Camel host in CLOSE_WAIT state. Under sufficient load, eventually these inactive sockets might reach some operating system limit, and the service fail.
The problem may be apparent with both camel-http and camel-http4 endpoints, although it is perhaps less noticeable with the latter. Both HTTP and HTTPS requests are affected.
Environment
- Red Hat JBoss Fuse
- 6.1
- 6.2
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.
