[[modules-gateway]]
=== Local gateway settings

The local gateway stores the cluster state and shard data across full
cluster restarts.

The following _static_ settings, which must be set on every master node,
control how long a freshly elected master should wait before it tries to
recover the cluster state and the cluster's data.

NOTE: These settings only take effect on a full cluster restart.

`gateway.expected_data_nodes`::
(<<static-cluster-setting,Static>>)
Number of data nodes expected in the cluster.
Recovery of local shards begins when the expected number of
data nodes join the cluster. Defaults to `0`.

`gateway.recover_after_time`::
(<<static-cluster-setting,Static>>)
If the expected number of nodes is not achieved, the recovery process waits
for the configured amount of time before trying to recover.
Defaults to `5m`.
+
Once the `recover_after_time` duration has timed out, recovery will start
as long as the following condition is met:

`gateway.recover_after_data_nodes`::
(<<static-cluster-setting,Static>>)
Recover as long as this many data nodes have joined the cluster.

These settings can be configured in `elasticsearch.yml` as follows:

[source,yaml]
--------------------------------------------------
gateway.expected_data_nodes: 3
gateway.recover_after_time: 600s
gateway.recover_after_data_nodes: 3
--------------------------------------------------

[[dangling-indices]]
==== Dangling indices

When a node joins the cluster, if it finds any shards stored in its local
data directory that do not already exist in the cluster, it will consider
those shards to belong to a "dangling" index. You can list, import or
delete dangling indices using the <<dangling-indices-api,Dangling indices
API>>.

NOTE: The API cannot offer any guarantees as to whether the imported data
truly represents the latest state of the data when the index was still part
of the cluster.
