迁移到 8.13

编辑

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

另请参见 8.16 新功能发行说明

8.13.0 中的新增功能。

重大更改

编辑

8.13 中没有重大更改。

显著更改

编辑

以下是需要注意的一些重要的非重大更新

  • 对处于技术预览版的功能的更改。
  • 日志格式的更改。
  • 对非公开 API 的更改。
  • 修复关键错误的行为更改。

索引设置更改

编辑
index.look_ahead_time 索引设置的默认值从 2 小时更改为 30 分钟。

详情
index.look_ahead_time 索引设置的最大值从 2 小时降低到 30 分钟。

影响
@timestamp 在 30 分钟或更长时间后的文档将被拒绝。以前,@timestamp 在 2 小时或更长时间后的文档会被拒绝。如果需要保留之前的行为,则在执行升级之前将 index.look_ahead_time 设置更新为两小时。

降低 look_ahead_time 索引设置的最大值

详情
look_ahead_time 索引设置的最大值从 7 天降低到 2 小时。

影响
介于 2 小时和 7 天之间的任何值都将被视为 2 小时的提前时间。

REST API 更改

编辑
ESQL:语法 - FROM METADATA 不再需要 []

详情
删除 FROM 命令语句中 METADATA 选项的 [ ]

影响
以前要返回元数据字段,必须使用方括号:(例如,FROM index [METADATA _index])。现在不再需要了:[ ] 已删除,无需指定,从而简化了上面的命令为:'FROM index METADATA _index'。

ES|QL:从语法中删除 PROJECT 关键字

详情
从 ES|QL 语法中删除 PROJECT 关键字(KEEP 的别名)

影响
在此更改之前,用户可以使用 PROJECT 作为 ESQL 查询中 KEEP 的别名(例如,FROM idx | PROJECT name, surname),解析器将 PROJECT 替换为 KEEP,并发出警告:PROJECT 命令不再受支持,请改用 KEEP,并且查询正常执行。通过此更改,查询解析器不再识别 PROJECT 命令;使用 PROJECT 命令的查询现在返回解析异常。

[ESQL] 删除 is_nan、is_finite 和 is_infinite

详情
删除函数 is_nanis_finiteis_infinite

影响
尝试使用上述函数现在将导致计划程序时间错误。这些函数不再受支持。

弃用功能

编辑

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

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

集群和节点设置弃用

编辑
弃用 client.type

详情
自 8.0 中删除节点客户端以来,节点设置 client.type 已被忽略。该设置现已弃用,并将在未来的版本中删除。

影响
elasticsearch.yml 中删除 client.type 设置

REST API 弃用

编辑
DesiredNode: 弃用 node_version 字段,并使其对于当前版本可选

详情
desired_node API 包含一个 node_version 字段,用于对所需的新节点版本执行验证。这种检查范围太广,最好由外部逻辑完成,因此已将其删除,使 node_version 字段不再必要。该字段将在以后的版本中删除。

影响
用户应更新其 desired_node 的用法,不再包含 node_version 字段。