Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions docs/reference/index.asciidoc
Original file line number Diff line number Diff line change
Expand Up @@ -29,8 +29,6 @@ include::setup/bootstrap-checks-xes.asciidoc[]
:edit_url:
include::upgrade.asciidoc[]

include::migration/index.asciidoc[]

include::api-conventions.asciidoc[]

include::docs.asciidoc[]
Expand Down Expand Up @@ -76,6 +74,8 @@ include::glossary.asciidoc[]

include::release-notes/highlights.asciidoc[]

include::migration/index.asciidoc[]

include::release-notes.asciidoc[]

include::redirects.asciidoc[]
38 changes: 19 additions & 19 deletions docs/reference/migration/migrate_7_0.asciidoc
Original file line number Diff line number Diff line change
@@ -1,30 +1,14 @@
[[breaking-changes-7.0]]
== Breaking changes in 7.0
++++
<titleabbrev>7.0</titleabbrev>
++++

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

See also <<release-highlights>> and <<es-release-notes>>.

[float]
=== Indices created before 7.0

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

[IMPORTANT]
.Reindex indices from Elasticsearch 5.x or before
=========================================

Indices created in Elasticsearch 5.x or before will need to be reindexed with
Elasticsearch 6.x in order to be readable by Elasticsearch 7.x.

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

[float]
=== Also see:

* <<breaking_70_aggregations_changes>>
* <<breaking_70_cluster_changes>>
* <<breaking_70_indices_changes>>
Expand All @@ -41,6 +25,22 @@ Elasticsearch 6.x in order to be readable by Elasticsearch 7.x.
* <<breaking_70_restclient_changes>>
* <<breaking_70_low_level_restclient_changes>>

[float]
=== Indices created before 7.0

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

[IMPORTANT]
.Reindex indices from Elasticsearch 5.x or before
=========================================

Indices created in Elasticsearch 5.x or before will need to be reindexed with
Elasticsearch 6.x in order to be readable by Elasticsearch 7.x.

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

include::migrate_7_0/aggregations.asciidoc[]
include::migrate_7_0/analysis.asciidoc[]
include::migrate_7_0/cluster.asciidoc[]
Expand Down
5 changes: 5 additions & 0 deletions docs/reference/migration/migrate_7_0/aggregations.asciidoc
Original file line number Diff line number Diff line change
@@ -1,21 +1,26 @@
[float]
[[breaking_70_aggregations_changes]]
=== Aggregations changes

[float]
==== Deprecated `global_ordinals_hash` and `global_ordinals_low_cardinality` execution hints for terms aggregations have been removed

These `execution_hint` are removed and should be replaced by `global_ordinals`.

[float]
==== `search.max_buckets` in the cluster setting

The dynamic cluster setting named `search.max_buckets` now defaults
to 10,000 (instead of unlimited in the previous version).
Requests that try to return more than the limit will fail with an exception.

[float]
==== `missing` option of the `composite` aggregation has been removed

The `missing` option of the `composite` aggregation, deprecated in 6.x,
has been removed. `missing_bucket` should be used instead.

[float]
==== Replaced `params._agg` with `state` context variable in scripted metric aggregations

The object used to share aggregation state between the scripts in a Scripted Metric
Expand Down
5 changes: 5 additions & 0 deletions docs/reference/migration/migrate_7_0/analysis.asciidoc
Original file line number Diff line number Diff line change
@@ -1,12 +1,15 @@
[float]
[[breaking_70_analysis_changes]]
=== Analysis changes

[float]
==== Limiting the number of tokens produced by _analyze

To safeguard against out of memory errors, the number of tokens that can be produced
using the `_analyze` endpoint has been limited to 10000. This default limit can be changed
for a particular index with the index setting `index.analyze.max_token_count`.

[float]
==== Limiting the length of an analyzed text during highlighting

Highlighting a text that was indexed without offsets or term vectors,
Expand All @@ -16,13 +19,15 @@ To protect against this, the maximum number of characters that will be analyzed
limited to 1000000. This default limit can be changed
for a particular index with the index setting `index.highlight.max_analyzed_offset`.

[float]
==== `delimited_payload_filter` renaming

The `delimited_payload_filter` was deprecated and renamed to `delimited_payload` in 6.2.
Using it in indices created before 7.0 will issue deprecation warnings. Using the old
name in new indices created in 7.0 will throw an error. Use the new name `delimited_payload`
instead.

[float]
==== `standard` filter has been removed

The `standard` token filter has been removed because it doesn't change anything in the stream.
9 changes: 9 additions & 0 deletions docs/reference/migration/migrate_7_0/api.asciidoc
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
[float]
[[breaking_70_api_changes]]
=== API changes

[float]
==== Camel case and underscore parameters deprecated in 6.x have been removed
A number of duplicate parameters deprecated in 6.x have been removed from
Bulk request, Multi Get request, Term Vectors request, and More Like This Query
Expand All @@ -22,6 +24,7 @@ The following parameters starting with underscore have been removed:
Instead of these removed parameters, use their non camel case equivalents without
starting underscore, e.g. use `version_type` instead of `_version_type` or `versionType`.

[float]
==== Thread pool info

In previous versions of Elasticsearch, the thread pool info returned in the
Expand All @@ -48,10 +51,12 @@ aligns the output of the API with the configuration values for thread
pools. Note that `core` and `max` will be populated for scaling thread pools,
and `size` will be populated for fixed thread pools.

[float]
==== The parameter `fields` deprecated in 6.x has been removed from Bulk request
and Update request. The Update API returns `400 - Bad request` if request contains
unknown parameters (instead of ignored in the previous version).

[float]
[[remove-suggest-metric]]
==== Remove support for `suggest` metric/index metric in indices stats and nodes stats APIs

Expand All @@ -66,6 +71,7 @@ In the past, `fields` could be provided either as a parameter, or as part of the
body. Specifying `fields` in the request body as opposed to a parameter was deprecated
in 6.4.0, and is now unsupported in 7.0.0.

[float]
==== `copy_settings` is deprecated on shrink and split APIs

Versions of Elasticsearch prior to 6.4.0 did not copy index settings on shrink
Expand All @@ -76,10 +82,12 @@ will be for such settings to be copied on such operations. To enable users in
the only behavior in 8.0.0, this parameter is deprecated in 7.0.0 for removal in
8.0.0.

[float]
==== The deprecated stored script contexts have now been removed
When putting stored scripts, support for storing them with the deprecated `template` context or without a context is
now removed. Scripts must be stored using the `script` context as mentioned in the documentation.

[float]
==== Get Aliases API limitations when {security} is enabled removed

The behavior and response codes of the get aliases API no longer vary
Expand All @@ -88,6 +96,7 @@ depending on whether {security} is enabled. Previously a
current user was not authorized for any alias. An empty response with
status 200 - OK is now returned instead at all times.

[float]
==== Put User API response no longer has `user` object

The Put User API response was changed in 6.5.0 to add the `created` field
Expand Down
4 changes: 4 additions & 0 deletions docs/reference/migration/migrate_7_0/cluster.asciidoc
Original file line number Diff line number Diff line change
@@ -1,16 +1,20 @@
[float]
[[breaking_70_cluster_changes]]
=== Cluster changes

[float]
==== `:` is no longer allowed in cluster name

Due to cross-cluster search using `:` to separate a cluster and index name,
cluster names may no longer contain `:`.

[float]
==== New default for `wait_for_active_shards` parameter of the open index command

The default value for the `wait_for_active_shards` parameter of the open index API
is changed from 0 to 1, which means that the command will now by default wait for all
primary shards of the opened index to be allocated.

[float]
==== Shard preferences `_primary`, `_primary_first`, `_replica`, and `_replica_first` are removed
These shard preferences are removed in favour of the `_prefer_nodes` and `_only_nodes` preferences.
15 changes: 12 additions & 3 deletions docs/reference/migration/migrate_7_0/indices.asciidoc
Original file line number Diff line number Diff line change
@@ -1,17 +1,20 @@
[float]
[[breaking_70_indices_changes]]
=== Indices changes

[float]
==== `:` is no longer allowed in index name

Due to cross-cluster search using `:` to separate a cluster and index name,
index names may no longer contain `:`.

[float]
==== `index.unassigned.node_left.delayed_timeout` may no longer be negative

Negative values were interpreted as zero in earlier versions but are no
longer accepted.


[float]
==== `_flush` and `_force_merge` will no longer refresh

In previous versions issuing a `_flush` or `_force_merge` (with `flush=true`)
Expand All @@ -20,7 +23,7 @@ visible to searches and non-realtime GET operations. From now on these operation
don't have this side-effect anymore. To make documents visible an explicit `_refresh`
call is needed unless the index is refreshed by the internal scheduler.


[float]
==== Limit to the difference between max_size and min_size in NGramTokenFilter and NGramTokenizer

To safeguard against creating too many index terms, the difference between `max_ngram` and
Expand All @@ -29,7 +32,7 @@ limit can be changed with the index setting `index.max_ngram_diff`. Note that if
exceeded a error is thrown only for new indices. For existing pre-7.0 indices, a deprecation
warning is logged.


[float]
==== Limit to the difference between max_size and min_size in ShingleTokenFilter

To safeguard against creating too many tokens, the difference between `max_shingle_size` and
Expand All @@ -38,6 +41,7 @@ limit can be changed with the index setting `index.max_shingle_diff`. Note that
exceeded a error is thrown only for new indices. For existing pre-7.0 indices, a deprecation
warning is logged.

[float]
==== Document distribution changes

Indices created with version `7.0.0` onwards will have an automatic `index.number_of_routing_shards`
Expand All @@ -46,6 +50,7 @@ shards the index has. In order to maintain the exact same distribution as a pre
`index.number_of_routing_shards` must be set to the `index.number_of_shards` at index creation time.
Note: if the number of routing shards equals the number of shards `_split` operations are not supported.

[float]
==== Skipped background refresh on search idle shards

Shards belonging to an index that does not have an explicit
Expand All @@ -56,6 +61,7 @@ that access a search idle shard will be "parked" until the next refresh
happens. Indexing requests with `wait_for_refresh` will also trigger
a background refresh.

[float]
==== Remove deprecated url parameters for Clear Indices Cache API

The following previously deprecated url parameter have been removed:
Expand All @@ -65,12 +71,14 @@ The following previously deprecated url parameter have been removed:
* `request_cache` - use `request` instead
* `field_data` - use `fielddata` instead

[float]
==== `network.breaker.inflight_requests.overhead` increased to 2

Previously the in flight requests circuit breaker considered only the raw byte representation.
By bumping the value of `network.breaker.inflight_requests.overhead` from 1 to 2, this circuit
breaker considers now also the memory overhead of representing the request as a structured object.

[float]
==== Parent circuit breaker changes

The parent circuit breaker defines a new setting `indices.breaker.total.use_real_memory` which is
Expand All @@ -79,6 +87,7 @@ heap memory instead of only considering the reserved memory by child circuit bre
setting is `true`, the default parent breaker limit also changes from 70% to 95% of the JVM heap size.
The previous behavior can be restored by setting `indices.breaker.total.use_real_memory` to `false`.

[float]
==== `fix` value for `index.shard.check_on_startup` is removed

Deprecated option value `fix` for setting `index.shard.check_on_startup` is not supported.
5 changes: 5 additions & 0 deletions docs/reference/migration/migrate_7_0/java.asciidoc
Original file line number Diff line number Diff line change
@@ -1,23 +1,28 @@
[float]
[[breaking_70_java_changes]]
=== Java API changes

[float]
==== `isShardsAcked` deprecated in `6.2` has been removed

`isShardsAcked` has been replaced by `isShardsAcknowledged` in
`CreateIndexResponse`, `RolloverResponse` and
`CreateIndexClusterStateUpdateResponse`.

[float]
==== `prepareExecute` removed from the client api

The `prepareExecute` method which created a request builder has been
removed from the client api. Instead, construct a builder for the
appropriate request directly.

[float]
==== Some Aggregation classes have moved packages

* All classes present in `org.elasticsearch.search.aggregations.metrics.*` packages
were moved to a single `org.elasticsearch.search.aggregations.metrics` package.

[float]
==== `Retry.withBackoff` methods with `Settings` removed

The variants of `Retry.withBackoff` that included `Settings` have been removed
Expand Down
Original file line number Diff line number Diff line change
@@ -1,13 +1,16 @@
[float]
[[breaking_70_low_level_restclient_changes]]
=== Low-level REST client changes

[float]
==== Deprecated flavors of performRequest have been removed

We deprecated the flavors of `performRequest` and `performRequestAsync` that
do not take `Request` objects in 6.4.0 in favor of the flavors that take
`Request` objects because those methods can be extended without breaking
backwards compatibility.

[float]
==== Removed setHosts

We deprecated `setHosts` in 6.4.0 in favor of `setNodes` because it supports
Expand Down
Loading