Breaking changes in 6.0
This section discusses the changes that you need to be aware of when migrating your application to Elasticsearch 6.0
本部分讨论将应用程序迁移到Elasticsearch 6.0时需要注意的更改。
indices created before 6.0.
Elasticsearch 6.0 can read indices created in version 5.0 or above. An Elasticsearch 6.0 node will not start in the presence of indices created in a version of Elasticsearch before 5.0.
Elasticsearch 6.0可以读取在5.0或更高版本中创建的索引。 在5.0之前的版本中创建的索引不存在时,Elasticsearch 6.0节点将不会启动。
IMPORTANT
Reindex indices from Elasticsearch 2.x or before
从Elasticsearch 2.x或更早版本重新索引
Indices created in Elasticsearch 2.x or before will need to be reindexed with Elasticsearch 5.x in order to be readable by Elasticsearch 6.x.
在Elasticsearch 2.x或更早版本中创建的指标 将需要使用Elasticsearch 5.x重新编制索引,以便被Elasticsearch 6.x读取。
IMPORTANT
Multiple mapping types are not supported in indices created in 6.0
在6.0中创建的索引中不支持多种映射类型
The ability to have multiple mapping types per index has been removed in 6.0. New indices will be restricted to a single type. This is the first step in the plan to remove mapping types altogether. Indices created in 5.x will continue to support multiple mapping types.
每个索引具有多种映射类型的功能已在6.0中删除。 新索引将被限制为单一类型。 这是计划完全删除映射类型的第一步。 在5.x中创建的索引将继续支持多种映射类型。
1.Aggregations changes
2.Cat API changes
3.Clients changes
4.Cluster changes
5.Document API changes
6.Indices changes
7.Ingest changes
8.Java API changes
9.Mapping changes
10.Packaging changes
11.Percolator changes
12.Plugins changes
13.Reindex changes
14.REST changes
15.Stats and info changes
16.Search and Query DSL changes
17.Settings changes
18.Scripting changes
Breaking changes in 6.1
Bootstrap checks now apply to link-local addresses
Previously when Elasticsearch was bound to localhost, Elasticsearch would bind to any address on the loopback device. This included link-local addresses on the loopback device such as fe80::1%lo0 on macOS. Starting in 6.1.2, Elasticsearch will now only bind to loopback addresses on the loopback device. Because of the previous behavior, Elasticsearch would skip the bootstrap checks if bound to a link-local address. Now that Elasticsearch no longer binds to such addresses when binding to localhost, the bootstrap checks now apply to link-local addresses.
以前,当Elasticsearch绑定到localhost时,Elasticsearch会绑定到回送设备上的任何地址。这包括回送设备上的本地链接地址,例如macOS上的fe80 :: 1%lo0。从6.1.2开始,Elasticsearch现在将仅绑定到回送设备上的回送地址。由于之前的行为,Elasticsearch如果绑定到本地链接地址,将跳过引导检查。现在,当Elasticsearch绑定到本地主机时不再绑定到此类地址,引导检查现在适用于本地链接地址。
Breaking changes in 6.2
All permission bootstrap check
所有权限引导检查
Elasticsearch installs a security manager during bootstrap to mitigate the scope of exploits in the JDK, in third-party dependencies, and in Elasticsearch itself as well as to sandbox untrusted plugins. A custom security policy can be applied and one permission that can be added to this policy is java.security.AllPermission. However, this effectively disables the security manager. As such, granting this permission in production mode is now forbidden via the all permission bootstrap check.
Elasticsearch在引导过程中安装了一个安全管理器,以减轻JDK,第三方依赖关系,Elasticsearch自身以及沙箱中不受信任插件的利用范围。 可以应用自定义安全策略,可以将一个权限添加到该策略中,即java.security.AllPermission。 但是,这实际上会禁用安全管理器。 因此,现在通过所有权限引导检查禁止在生产模式下授予此权限。
Breaking changes in 6.3
This section discusses the changes that you need to be aware of when migrating your application to Elasticsearch 6.3.
本部分讨论将应用程序迁移到Elasticsearch6.3时需要注意的更改
1.API changes
2.Packaging changes
3.Plugins changes
4.Settings changes
Breaking changes in 6.4
This se