迁移到 8.1

编辑

本节讨论在将您的应用程序迁移到 Elasticsearch 8.1 时需要注意的更改。

另请参阅 8.16 中的新增功能发行说明

重大更改

编辑

Elasticsearch 8.1 中的以下更改可能会影响您的应用程序并阻止其正常运行。在升级到 8.1 之前,请查看这些更改并采取所述步骤来减轻影响。

REST API 更改

编辑
搜索 API 的 fields 参数现在会规范化跨越国际日期变更线的几何对象

详细信息
搜索 API 的 fields 参数现在会规范化跨越国际日期变更线(+/-180° 经度)的 geo_shape 对象。例如,如果一个多边形跨越日期变更线,则 fields 参数将其返回为两个多边形。您仍然可以从 _source 中检索原始的、未规范化的几何对象。

影响
如果您的应用程序需要未规范化的几何对象,请从 _source 中检索它们,而不是使用 fields 参数。

弃用

编辑

以下功能已在 Elasticsearch 8.1 中弃用,并将在未来版本中移除。虽然这不会对您的应用程序产生直接影响,但我们强烈建议您在升级到 8.1 后采取所述步骤更新您的代码。

要了解您是否正在使用任何弃用的功能,请启用 弃用日志记录

集群和节点设置弃用

编辑
discovery.type 设置的旧值已弃用

详细信息
discovery.type 设置的旧值已弃用,并在未来版本中将被禁止。

影响
不要将 discovery.type 设置为除 single-nodemulti-node 之外的任何值。所有其他值都等效于默认的发现类型,即 multi-node。在可能的情况下,省略此设置,以便 Elasticsearch 使用默认的发现类型。

REST API 弃用

编辑
批量操作的宽松解析已弃用

详细信息
旧版本的 Elasticsearch 对批量请求的操作行进行非常宽松的解析,并且会静默忽略无效或格式错误的操作。这种宽松性已弃用,未来版本将拒绝包含无效操作的批量请求。

影响
确保批量操作是格式良好的 JSON 对象,其中包含一个具有正确键的条目。

_sql API 中弃用 index_include_frozen 请求参数

详细信息
在冻结索引弃用之后,index_include_frozen 参数和 FROZEN 语法现在也已弃用。

影响
您应该使用 解冻索引 API 解冻冻结索引,并停止在 SQL 查询中使用 index_include_frozen 参数或 FROZEN 关键字。对于某些用例,冻结层可能是冻结索引的合适替代方案。有关更多信息,请参阅 数据层