10 Commits

Author SHA1 Message Date
Luca Cavanna
6e4d33bb4d Refactored create index api to make use of the new recently introduced generic ack mechanism
Closes #4421
2014-01-06 09:04:57 +01:00
Luca Cavanna
630641f292 Refactored put mapping api to make use of the new recently introduced generic ack mechanism
Note: we were previously waiting for ack only from all nodes that contain shards for the indices that the mapping updatewas applied to. This change introduces a wait for ack from all nodes, consitent with other api as the ack is meant more on the cluster state itself, which is held by all nodes and needs to be updated on all nodes anyway.

Closes #4228
2013-11-29 11:39:23 +01:00
Luca Cavanna
39c606c59a Refactored open/close index api to make use of the new recently introduced generic ack mechanism
Closes #4169
2013-11-20 10:40:25 +01:00
Luca Cavanna
b2ad34cf99 Refactored indices aliases api to make use of the new recently introduced generic ack mechanism
Closes #4114
2013-11-14 22:59:17 +01:00
Lee Hinman
7d52d58747 Add AllocationDecider that takes free disk space into account
This commit adds two main pieces, the first is a ClusterInfoService
that provides a service running on the master nodes that fetches the
total/free bytes for each data node in the cluster as well as the
sizes of all shards in the cluster. This information is gathered by
default every 30 seconds, and can be changed dynamically by setting
the `cluster.info.update.interval` setting. This ClusterInfoService
can hopefully be used in the future to weight nodes for allocation
based on their disk usage, if desired.

The second main piece is the DiskThresholdDecider, which can disallow
a shard from being allocated to a node, or from remaining on the node
depending on configuration parameters. There are three main
configuration parameters for the DiskThresholdDecider:

`cluster.routing.allocation.disk.threshold_enabled` controls whether
the decider is enabled. It defaults to false (disabled). Note that the
decider is also disabled for clusters with only a single data node.

`cluster.routing.allocation.disk.watermark.low` controls the low
watermark for disk usage. It defaults to 0.70, meaning ES will not
allocate new shards to nodes once they have more than 70% disk
used. It can also be set to an absolute byte value (like 500mb) to
prevent ES from allocating shards if less than the configured amount
of space is available.

`cluster.routing.allocation.disk.watermark.high` controls the high
watermark. It defaults to 0.85, meaning ES will attempt to relocate
shards to another node if the node disk usage rises above 85%. It can
also be set to an absolute byte value (similar to the low watermark)
to relocate shards once less than the configured amount of space is
available on the node.

Closes #3480
2013-09-09 09:49:30 -06:00
Luca Cavanna
8eed6cdcae Renamed MetaDataStateIndexService to MetaDataIndexStateService for consistency 2013-07-29 15:12:09 +02:00
Luca Cavanna
c23c5d2494 Added support for acknowledgement from other nodes in open/close index api
The open/close index api now waits for an acknowledgement from all the other nodes before returning its response, till the timeout (configurable, default 10 secs) expires. The returned acknowledged flag reflects whether the cluster state change was acknowledged by all the nodes or the timeout expired before.

Closes #3400
2013-07-29 15:12:08 +02:00
Igor Motov
de243493c9 Changing dynamic index and cluster settings should work on master-only nodes
Fixes #2675
2013-02-26 08:54:46 -05:00
Shay Banon
6a71eab51f finalize structure, tests pass 2011-12-06 02:43:17 +02:00
Shay Banon
a8fd2d48b8 first cleanup phase, move to single src 2011-12-06 00:59:23 +02:00