We are using the Java transport client which is creating a thread pool of a size that appears to be based on available processors. We have a search intensive application (i.e. thousands of searches make up a single operation) that seems to be bottlenecking based on the thread pool size. I can understand having a thread pool size based on the processor count for a CPU intensive operation...but this isn't CPU intensive, it's basically the client waiting for remote ES searches to complete - so I expect we can achieve performance gains by conducting a larger number of simultaneous searches than the processor count on our client machine.
Is there a way for us to adjust the transport client thread pool size?