The indices module allow to control settings that are globally managed for all indices.

Indexing Bufferedit

The indexing buffer setting allows to control how much memory will be allocated for the indexing process. It is a global setting that bubbles down to all the different shards allocated on a specific node.

The indices.memory.index_buffer_size accepts either a percentage or a byte size value. It defaults to 10%, meaning that 10% of the total memory allocated to a node will be used as the indexing buffer size. This amount is then divided between all the different shards. Also, if percentage is used, it is possible to set min_index_buffer_size (defaults to 48mb) and max_index_buffer_size (defaults to unbounded).

The indices.memory.min_shard_index_buffer_size allows to set a hard lower limit for the memory allocated per shard for its own indexing buffer. It defaults to 4mb.

TTL intervaledit

You can dynamically set the indices.ttl.interval, which allows to set how often expired documents will be automatically deleted. The default value is 60s.

The deletion orders are processed by bulk. You can set indices.ttl.bulk_size to fit your needs. The default value is 10000.

See also _ttl.


The following settings can be set to manage the recovery policy:


defaults to 3.


defaults to 2.


defaults to 512kb.


defaults to 1000.


defaults to 512kb.


defaults to true.


defaults to 40mb.

Store level throttlingedit

The following settings can be set to control the store throttling:

could be merge (default), none or all. See Store.

defaults to 20mb.