Change queue capacity in an elastic node

I am running a local node with queue capacity of :200 , but due to large number of requests coming in, the node rejects the request when it goes beyond 200 (which is the queue capacity)

i tried setting in thread_pool.search.queue_size : 2000 in elasticsearch.yml and restarted the node, but the queue capacity still remains 200.

Any guidance on how the change the queue_capacity value would be much appreciated

Elastic version: 6.4

In all questions, it helps to specify which version of ES are you running?

updated as required

Per the documentation,

search

For count/search/suggest operations. Thread pool type is fixed_auto_queue_size with a size of int((# of available_processors * 3) / 2) + 1 , and initial queue_size of 1000 .

The fixed_auto_queue_size thread pool holds a fixed size of threads to handle the requests with a bounded queue for pending requests that have no threads to service them. It’s similar to the fixed threadpool, however, the queue_size automatically adjusts according to calculations based on Little’s Law. These calculations will potentially adjust the queue_size up or down by 50 every time auto_queue_frame_size operations have been completed.

Maybe you can try bumping up max_queue_size. However, the defaults work very well and increasing the queue size can actually be detrimental in a single-node cluster.

So, there is no provision to change the queue_ capacity directly?. Also just reconfirming, the queue_capacity readjusts itself accordingly?

Correct

You can try setting max_queue_size but that's the maximum range and not necessarily the value the queue will actually take.

setting max_queue_size directly on elasticsearch.yml throws error, saying :
setting [max_queue_size] please check that any required plugins are installed is there a specific way to do that?

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.