Docs: Made the list of breaking changes in each version more obvious

This commit is contained in:
Clinton Gormley 2015-11-08 12:59:07 +01:00
parent 1220b89a60
commit 28015d9e03
19 changed files with 92 additions and 17 deletions

View File

@ -20,6 +20,26 @@ We have provided the https://github.com/elastic/elasticsearch-migration[Elastics
to help you detect any issues that you may have when upgrading to
Elasticsearch 2.0. Please install and run the plugin *before* upgrading.
[float]
=== Also see
* <<breaking_20_removed_features>>
* <<breaking_20_network_changes>>
* <<breaking_20_multiple_literal_data_path_literal_striping>>
* <<breaking_20_mapping_changes>>
* <<breaking_20_crud_and_routing_changes>>
* <<breaking_20_query_dsl_changes>>
* <<breaking_20_search_changes>>
* <<breaking_20_aggregation_changes>>
* <<breaking_20_parent_child_changes>>
* <<breaking_20_scripting_changes>>
* <<breaking_20_index_api_changes>>
* <<breaking_20_snapshot_and_restore_changes>>
* <<breaking_20_plugin_and_packaging_changes>>
* <<breaking_20_setting_changes>>
* <<breaking_20_stats_info_and_literal_cat_literal_changes>>
* <<breaking_20_java_api_changes>>
include::migrate_2_0/removals.asciidoc[]
include::migrate_2_0/network.asciidoc[]

View File

@ -1,3 +1,4 @@
[[breaking_20_aggregation_changes]]
=== Aggregation changes
==== Min doc count defaults to zero

View File

@ -1,3 +1,4 @@
[[breaking_20_crud_and_routing_changes]]
=== CRUD and routing changes
==== Explicit custom routing

View File

@ -1,3 +1,4 @@
[[breaking_20_index_api_changes]]
=== Index API changes
==== Index aliases

View File

@ -1,3 +1,4 @@
[[breaking_20_java_api_changes]]
=== Java API changes
==== Transport API construction

View File

@ -1,3 +1,4 @@
[[breaking_20_mapping_changes]]
=== Mapping changes
A number of changes have been made to mappings to remove ambiguity and to

View File

@ -1,3 +1,4 @@
[[breaking_20_network_changes]]
=== Network changes
==== Bind to localhost

View File

@ -1,3 +1,4 @@
[[breaking_20_plugin_and_packaging_changes]]
=== Plugin and packaging changes
==== Symbolic links and paths

View File

@ -1,3 +1,4 @@
[[breaking_20_parent_child_changes]]
=== Parent/Child changes
Parent/child has been rewritten completely to reduce memory usage and to

View File

@ -1,3 +1,4 @@
[[breaking_20_query_dsl_changes]]
=== Query DSL changes
==== Queries and filters merged

View File

@ -1,3 +1,4 @@
[[breaking_20_removed_features]]
=== Removed features
==== Rivers have been removed

View File

@ -1,3 +1,4 @@
[[breaking_20_scripting_changes]]
=== Scripting changes
==== Scripting syntax

View File

@ -1,3 +1,4 @@
[[breaking_20_search_changes]]
=== Search changes
==== Partial fields

View File

@ -1,3 +1,4 @@
[[breaking_20_setting_changes]]
=== Setting changes
==== Command line flags

View File

@ -1,3 +1,4 @@
[[breaking_20_snapshot_and_restore_changes]]
=== Snapshot and Restore changes
==== File-system repositories must be whitelisted

View File

@ -1,3 +1,4 @@
[[breaking_20_stats_info_and_literal_cat_literal_changes]]
=== Stats, info, and `cat` changes
==== Sigar removed

View File

@ -1,3 +1,4 @@
[[breaking_20_multiple_literal_data_path_literal_striping]]
=== Multiple `data.path` striping
Previously, if the `data.path` setting listed multiple data paths, then a

View File

@ -4,6 +4,14 @@
This section discusses the changes that you need to be aware of when migrating
your application to Elasticsearch 2.1.
* <<breaking_21_search_changes>>
* <<breaking_21_update_changes>>
* <<breaking_21_removed_features>>
* <<breaking_21_more_like_this>>
* <<breaking_21_nested_sorting>>
* <<breaking_21_index_apis>>
[[breaking_21_search_changes]]
=== Search changes
==== `search_type=scan` deprecated
@ -36,6 +44,7 @@ search. It's safest to leave this value as it is an use the scroll api for any
deep scrolling but this setting is dynamic so it can raised or lowered as
needed.
[[breaking_21_update_changes]]
=== Update changes
==== Updates now `detect_noop` by default
@ -46,6 +55,7 @@ source unless you explicitly set `"detect_noop": false`. `detect_noop` was
always computationally cheap compared to the expense of the update which can be
thought of as a delete operation followed by an index operation.
[[breaking_21_removed_features]]
=== Removed features
==== `indices.fielddata.cache.expire`
@ -53,21 +63,24 @@ thought of as a delete operation followed by an index operation.
The experimental feature `indices.fielddata.cache.expire` has been removed.
For indices that have this setting configured, this config will be ignored.
[[breaking_21_more_like_this]]
=== More Like This
The MoreLikeThisQueryBuilder#ignoreLike methods have been deprecating in favor
to using the unlike methods.
The MoreLikeThisQueryBuilder#ignoreLike methods have been deprecated in favor
of using the unlike methods.
MoreLikeThisBuilder#addItem has been deprecated in favor to using
MoreLikeThisBuilder#addItem has been deprecated in favor of using
MoreLikeThisBuilder#addLikeItem.
[[breaking_21_nested_sorting]]
=== Nested sorting
If sorting on field inside a nested object then the `nested_path` should be specified.
Before there was an attempt to resolve the nested path automatically, but that was sometimes incorrect.
To avoid confusion the `nested_path` should always be specified.
=== Deprecations
[[breaking_21_index_apis]]
=== Index APIs
==== Optimize API

View File

@ -4,6 +4,18 @@
This section discusses the changes that you need to be aware of when migrating
your application to Elasticsearch 3.0.
* <<breaking_30_search_changes>>
* <<breaking_30_rest_api_changes>>
* <<breaking_30_parent_child_changes>>
* <<breaking_30_settings_changes>>
* <<breaking_30_mapping_changes>>
* <<breaking_30_plugins>>
* <<breaking_30_java_api_changes>>
* <<breaking_30_cache_concurrency>>
* <<breaking_30_non_loopback>>
* <<breaking_30_thread_pool>>
[[breaking_30_search_changes]]
=== Search changes
==== `search_type=count` removed
@ -13,6 +25,7 @@ In order to get the same benefits, you just need to set the value of the `size`
parameter to `0`.
For instance, the following request:
[source,sh]
---------------
GET /my_index/_search?search_type=count
@ -28,6 +41,7 @@ GET /my_index/_search?search_type=count
---------------
can be replaced with:
[source,sh]
---------------
GET /my_index/_search
@ -63,6 +77,7 @@ Scroll requests sorted by `_doc` have been optimized to more efficiently resume
from where the previous request stopped, so this will have the same performance
characteristics as the former `scan` search type.
[[breaking_30_rest_api_changes]]
=== REST API changes
==== search exists api removed
@ -121,6 +136,7 @@ Removed support for the deprecated top level `filter` in the search api, replace
Removed support for the undocumented `query_binary` and `filter_binary` sections of a search request.
[[breaking_30_parent_child_changes]]
=== Parent/Child changes
The `children` aggregation, parent child inner hits and `has_child` and `has_parent` queries will not work on indices
@ -147,7 +163,9 @@ When `max_children` was set to `0` on the `has_child` query then there was no up
are allowed to match. This has changed and `0` now really means to zero child documents are allowed. If no upper limit
is needed then the `max_children` option shouldn't be defined at all on the `has_child` query.
=== Settings changes ===
[[breaking_30_settings_changes]]
=== Settings changes
==== Analysis settings
@ -162,13 +180,15 @@ Previously, there were three settings for the ping timeout: `discovery.zen.initi
the only setting key for the ping timeout is now `discovery.zen.ping_timeout`. The default value for
ping timeouts remains at three seconds.
=== Mapping changes ===
[[breaking_30_mapping_changes]]
=== Mapping changes
==== Transform removed
The `transform` feature from mappings has been removed. It made issues very hard to debug.
=== Plugins
[[breaking_30_plugins]]
=== Plugin changes
Plugins implementing custom queries need to implement the `fromXContent(QueryParseContext)` method in their
`QueryParser` subclass rather than `parse`. This method will take care of parsing the query from `XContent` format
@ -191,14 +211,14 @@ function that it supports and it's able to parse. The function object can then t
function through the new `toFunction(QueryShardContext)` method, which returns a lucene function to be executed
on the data node.
==== Cloud AWS plugin
==== Cloud AWS plugin changes
Cloud AWS plugin has been split in two plugins:
* {plugins}/discovery-ec2.html[Discovery EC2 plugin]
* {plugins}/repository-s3.html[Repository S3 plugin]
==== Cloud Azure plugin
==== Cloud Azure plugin changes
Cloud Azure plugin has been split in three plugins:
@ -206,11 +226,12 @@ Cloud Azure plugin has been split in three plugins:
* {plugins}/repository-azure.html[Repository Azure plugin]
* {plugins}/store-smb.html[Store SMB plugin]
==== Cloud GCE plugin
==== Cloud GCE plugin changes
Cloud GCE plugin has been renamed to {plugins}/discovery-gce.html[Discovery GCE plugin].
=== Java-API
[[breaking_30_java_api_changes]]
=== Java API changes
==== Count api has been removed
@ -218,15 +239,17 @@ The deprecated count api has been removed from the Java api, use the search api
The following call
```
[source,java]
-----
client.prepareCount(indices).setQuery(query).get();
```
-----
can be replaced with
```
[source,java]
-----
client.prepareSearch(indices).setSource(new SearchSourceBuilder().size(0).query(query)).get();
```
-----
==== BoostingQueryBuilder
@ -352,8 +375,8 @@ settings at construction time.
==== NotQueryBuilder
The NotQueryBuilder which was deprecated in 2.1.0 is removed. As a replacement use BoolQueryBuilder
with added mustNot() clause. So instead of using `new NotQueryBuilder(filter)` now use
`new BoolQueryBuilder().mustNot(filter)`.
with added mustNot() clause. So instead of using `new NotQueryBuilder(filter)` now use
`new BoolQueryBuilder().mustNot(filter)`.
==== TermsQueryBuilder
@ -383,18 +406,21 @@ For simplicity, only one way of adding the ids to the existing list (empty by de
error description). This will influence code that use the `IndexRequest.opType()` or `IndexRequest.create()`
to index a document only if it doesn't already exist.
[[breaking_30_cache_concurrency]]
=== Cache concurrency level settings removed
Two cache concurrency level settings `indices.requests.cache.concurrency_level` and
`indices.fielddata.cache.concurrency_level` because they no longer apply to the cache implementation used for the
request cache and the field data cache.
[[breaking_30_non_loopback]]
=== Remove bind option of `non_loopback`
This setting would arbitrarily pick the first interface not marked as loopback. Instead, specify by address
scope (e.g. `_local_,_site_` for all loopback and private network addresses) or by explicit interface names,
hostnames, or addresses.
[[breaking_30_thread_pool]]
=== Forbid changing of thread pool types
Previously, <<modules-threadpool,thread pool types>> could be dynamically adjusted. The thread pool type effectively