101 lines
3.5 KiB
Plaintext
101 lines
3.5 KiB
Plaintext
[[breaking_20_removed_features]]
|
||
=== Removed features
|
||
|
||
==== Rivers have been removed
|
||
|
||
Elasticsearch does not support rivers anymore. While we had first planned to
|
||
keep them around to ease migration, keeping support for rivers proved to be
|
||
challenging as it conflicted with other important changes that we wanted to
|
||
bring to 2.0 like synchronous dynamic mappings updates, so we eventually
|
||
decided to remove them entirely. See
|
||
link:/blog/deprecating_rivers[Deprecating Rivers] for more background about
|
||
why we took this decision.
|
||
|
||
==== Facets have been removed
|
||
|
||
Facets, deprecated since 1.0, have now been removed. Instead, use the much
|
||
more powerful and flexible <<search-aggregations,aggregations>> framework.
|
||
This also means that Kibana 3 will not work with Elasticsearch 2.0.
|
||
|
||
==== MVEL has been removed
|
||
|
||
The MVEL scripting language has been removed. The default scripting language
|
||
is now Groovy.
|
||
|
||
==== Delete-by-query is now a plugin
|
||
|
||
The old delete-by-query functionality was fast but unsafe. It could lead to
|
||
document differences between the primary and replica shards, and could even
|
||
produce out of memory exceptions and cause the cluster to crash.
|
||
|
||
This feature has been reimplemented using the <<search-request-scroll,scroll>> and
|
||
<<docs-bulk,`bulk`>> APIs, which may be slower for queries which match
|
||
large numbers of documents, but is safe.
|
||
|
||
Currently, a long running delete-by-query job cannot be cancelled, which is
|
||
one of the reasons that this functionality is only available as a plugin. You
|
||
can install the plugin with:
|
||
|
||
[source,sh]
|
||
------------------
|
||
./bin/elasticsearch-plugin install delete-by-query
|
||
------------------
|
||
|
||
See {plugins}/plugins-delete-by-query.html for more information.
|
||
|
||
==== Multicast Discovery is now a plugin
|
||
|
||
Support for multicast is very patchy. Linux doesn’t allow multicast listening on localhost,
|
||
while OS/X sends multicast broadcasts across all interfaces regardless of the configured
|
||
bind address. On top of that, some networks have multicast disabled by default.
|
||
|
||
This feature has been moved to a plugin. The default discovery mechanism now uses
|
||
unicast, with a default setup which looks for the first 5 ports on localhost. If you
|
||
still need to use multicast discovery, you can install the plugin with:
|
||
|
||
[source,sh]
|
||
------------------
|
||
./bin/elasticsearch-plugin install discovery-multicast
|
||
------------------
|
||
|
||
==== `_shutdown` API
|
||
|
||
The `_shutdown` API has been removed without a replacement. Nodes should be
|
||
managed via the operating system and the provided start/stop scripts.
|
||
|
||
==== `murmur3` is now a plugin
|
||
|
||
The `murmur3` field, which indexes hashes of the field values, has been moved
|
||
out of core and is available as a plugin. It can be installed as:
|
||
|
||
[source,sh]
|
||
------------------
|
||
./bin/elasticsearch-plugin install mapper-murmur3
|
||
------------------
|
||
|
||
==== `_size` is now a plugin
|
||
|
||
The `_size` meta-data field, which indexes the size in bytes of the original
|
||
JSON document, has been moved out of core and is available as a plugin. It
|
||
can be installed as:
|
||
|
||
[source,sh]
|
||
------------------
|
||
./bin/elasticsearch-plugin install mapper-size
|
||
------------------
|
||
|
||
==== Thrift and memcached transport
|
||
|
||
The thrift and memcached transport plugins are no longer supported. Instead, use
|
||
either the HTTP transport (enabled by default) or the node or transport Java client.
|
||
|
||
==== Bulk UDP
|
||
|
||
The bulk UDP API has been removed. Instead, use the standard
|
||
<<docs-bulk,`bulk`>> API, or use UDP to send documents to Logstash first.
|
||
|
||
==== MergeScheduler pluggability
|
||
|
||
The merge scheduler is no longer pluggable.
|
||
|