[[breaking-changes-5.0]]
== Breaking changes in 5.0

This section discusses the changes that you need to be aware of when migrating
your application to Elasticsearch 5.0.

[float]
=== Indices created before 5.0

Elasticsearch 5.0 can read indices created in version 2.0 or above.  An
Elasticsearch 5.0 node will not start in the presence of indices created in a
version of Elasticsearch before 2.0.

[IMPORTANT]
.Reindex indices from Elasticseach 1.x or before
=========================================

Indices created in Elasticsearch 1.x or before will need to be reindexed with
Elasticsearch 2.x in order to be readable by Elasticsearch 5.x. The easiest
way to do this is to upgrade to Elasticsearch 2.3 or later and to use the
`reindex` API.

=========================================

The first time Elasticsearch 5.0 starts, it will automatically rename index
folders to use the index UUID instead of the index name. If you are using
<<indices-shadow-replicas,shadow replicas>> with shared data folders, first
start a single node with access to all data folders, and let it rename all
index folders before starting other nodes in the cluster.

[float]
=== Also see:

* <<breaking_50_search_changes>>
* <<breaking_50_mapping_changes>>
* <<breaking_50_percolator>>
* <<breaking_50_suggester>>
* <<breaking_50_index_apis>>
* <<breaking_50_document_api_changes>>
* <<breaking_50_settings_changes>>
* <<breaking_50_allocation>>
* <<breaking_50_http_changes>>
* <<breaking_50_rest_api_changes>>
* <<breaking_50_cat_api>>
* <<breaking_50_java_api_changes>>
* <<breaking_50_packaging>>
* <<breaking_50_plugins>>
* <<breaking_50_fs>>
* <<breaking_50_aggregations_changes>>
* <<breaking_50_scripting>>


include::migrate_5_0/search.asciidoc[]

include::migrate_5_0/mapping.asciidoc[]

include::migrate_5_0/percolator.asciidoc[]

include::migrate_5_0/suggest.asciidoc[]

include::migrate_5_0/index-apis.asciidoc[]

include::migrate_5_0/docs.asciidoc[]

include::migrate_5_0/settings.asciidoc[]

include::migrate_5_0/allocation.asciidoc[]

include::migrate_5_0/http.asciidoc[]

include::migrate_5_0/rest.asciidoc[]

include::migrate_5_0/cat.asciidoc[]

include::migrate_5_0/java.asciidoc[]

include::migrate_5_0/packaging.asciidoc[]

include::migrate_5_0/plugins.asciidoc[]

include::migrate_5_0/fs.asciidoc[]

include::migrate_5_0/aggregations.asciidoc[]

include::migrate_5_0/scripting.asciidoc[]
