show and change parameter threadpool.bulk.queue_size show and change parameter threadpool.bulk.queue_size elasticsearch elasticsearch

show and change parameter threadpool.bulk.queue_size


As shown in the official example, you can change the queue size of bulk thread pool using the below config in your elasticsearch.config or update the cluster setting.

Note, write thread pool is used for bulk request as documented in the same link:

write For single-document index/delete/update and bulk requests. Thread pool type is fixed with a size of # of available processors, queue_size of 200. The maximum size for this pool is 1 + # of available processors.

thread_pool:    write:        size: 30. --> no if threads in your case, its 16 as shown in exception        queue_size: 400 --> here you can add `queue_size`

Instruction on changing these settings also mentioned

Changing a specific thread pool can be done by setting its type-specific parameters; for example, changing the number of threads in the write thread pool:

Edit: As pointed out by @val in the comment section, Adding disclaimer about changing these default settings.

Please understand the technicalities of these settings and the impact, as these are often not advisable to change, more info in this official blog


i was searching how i can change thread_pool.write.queue_size and find 2 solutionsfirst

curl -XPUT  _cluster/settings -d '{    "persistent" : {        "thread_pool.write.queue_size" : <new_size>    }}'

second write to elasticsearch.yaml paramater thread_pool.write.queue_size

all solutions are valid for my version 6.2.7?