Elasticsearch 版本 8.3.0

edit

Elasticsearch 版本 8.3.0

edit

另请参阅 8.3 中的重大变更

已知问题

edit
  • 解析请求时,当数组中的最后一个元素被过滤掉(例如使用_source_includes)会失败。这是由于Jackson解析器中的一个错误。已在Elasticsearch 8.6.1中修复(#91456

Bug 修复

edit
Aggregations
  • 允许在 min_doc_count 聚合下使用 serial_diff #86401
  • 允许桶路径指定桶内的 _count #85720
  • 修复术语聚合中扁平化字段的错误 #87392
  • 修复不稳定的 top_metrics 测试 #86582 (问题: #86377)
  • 修复:在尝试合并运行统计信息之前检查字段是否存在 #86926
  • 修复:在顶级指标空值上对术语聚合进行排序 #85774
  • 在自动日期直方图聚合中序列化间隔 #85473
Audit
  • 修复审计日志以一致地包含端口号在 origin.address #86732
  • 支持移除审计日志的忽略过滤器 #87675 (问题: #68588)
Authentication
  • 授权用户可以禁用具有相同名称但不同领域的用户 #86473
  • 修复在调用清除所有领域缓存API时清除lastSuccessfulAuthCache的问题 #86909 (问题: #86650)
Authorization
  • 修复通配符应用程序权限的解析 #87293
CAT APIs
  • GET _cat/shards 中获取隐藏的索引统计信息 #86601 (问题: #84656)
CCR
  • 当CCR跟随者在跟随具有关闭索引的数据流时,防止无效的数据流元数据 #87076 (问题: #87048)
  • 移除CcrRepository中的一些阻塞 #87235
Cluster Coordination
  • 添加 master_timeout 支持到投票配置排除API #86670
  • 清除投票配置排除API的小修复 #87828
Discovery-Plugins
  • [discovery-gce] 修复FIPS模式下的传输初始化 #85817 (问题: #85803)
Distributed
  • DesiredNode构造期间强制执行外部ID唯一性 #84227
Engine
  • updateCheckPoints中失败分片之前分叉到WRITE线程 #87458 (问题: #87094)
  • 移除RecoverySourceHandler中的阻塞等待关闭 #86127 (问题: #85839)
Features
  • 修复重试 IndexRequest 时出现的 autoGeneratedTimestamp 不应在外部设置 错误 #86184 (问题: #83927)
Geo
  • 修复了在精度为0的geo_shapes上的Geotile聚合 #87202 (问题: #87201)
  • 修复了数组值geo_point字段的null_value #85959
  • 防止向矢量瓦片添加空值标签 #87051
  • 量化地理查询以从搜索结果中移除真正的负例 #85441 (问题: #40891)
Highlighting
ILM+SLM
  • 使ILM移动到错误步骤批处理 #85565 (问题: #81880)
Indices APIs
  • 使 GetIndexAction 可取消 #87681
Infra/Circuit Breakers
  • 使CBE消息创建更加健壮 #87881
Infra/Core
  • 调整osprobe断言以适应突发CPU #86990
  • 在异常后清理DeflateCompressor #87163 (问题: #87160)
  • 直接创建非主系统索引时出错 #86707
  • 修复输出中的空消息 #86981
  • 修复未覆盖批量写入时使用FilterOutputStream的问题 #86304
  • 在升级后的集群中隐藏系统索引及其别名 #87125
  • 重构代码以避免JDK错误:JDK-8285835 #86614
Infra/Logging
  • 临时提供 SystemPropertiesPropertySource #87149
Infra/Node Lifecycle
  • 在设置验证后升级文件夹 #87319
Infra/Plugins
  • 在Windows上列出插件信息时使用Windows换行符 #86408 (问题: #86352)
Infra/REST API
  • 在状态恢复之前修复最小节点版本 #86482
Infra/Scripting
  • 允许使用SemVer语义按脚本值排序 #85990 (问题: #85989, #82287)
  • 脚本: 修复未桥接设置器的设置快捷方式 #86868
  • 脚本: 将白名单作为资源加载 #87539
Infra/Settings
  • 允许移除归档索引设置 #86107
Ingest
  • 每次管道执行一次自引用检查 #85926 (问题: #85790)
Java Low Level REST Client
  • 当失败并出现ContentTooLargeException时,不要重试客户端请求 #87248 (问题: #86041)
License
  • 启动基本许可证的一致响应 #86272 (问题: #86244)
Machine Learning
  • 修复集群生命周期早期ML任务审计器异常 #87023 (问题: #87002)
  • 修复WordPiece对未知单词的子词标记化 #87510
  • 修复change_point聚合的分布变化检查 #86423
  • 修复推理超时处理错误,该错误会抛出意外的NullPointerException #87533
  • 修正从故障恢复时微调分类和回归模型训练的超参数的逻辑 #2251
  • 修复可能导致“x = NaN, distribution = class boost::math::normal_distribution<…​”日志错误分类和回归模型训练的来源 #2249
  • 修复影响停止优化分类和回归模型训练超参数决策的一些错误 #2259
  • 修复导致“必须提供评估函数的点”日志错误分类和回归模型训练的原因 #2268
  • 修复时间序列异常检测中“丢弃样本 = nan, 权重 = …​”日志错误的来源 #2286
Mapping
  • copy_to上下文中不要运行include_in_parent #87123 (问题: #87036)
Network
  • 拒绝在关闭时尝试openConnection #86315(问题:#86249
Recovery
  • 如果主节点故障转移后分片处于STARTED状态,则失败分片 #87451 (问题: #87367)
SQL
  • 修复 FORMAT 函数以符合 Microsoft SQL Server 规范 #86225 (问题: #66560)
  • 为 SQL clear cursor 实现二进制格式支持 #84230 (问题: #53359)
Search
  • 向多搜索模板响应添加状态字段 #85496 (问题: #83029)
  • 字段API允许在禁用_source时获取值 #87267 (问题: #87072)
  • 修复未配置的constant_keyword上的_terms_enum #86191 (问题: #86187, #86267)
  • 修复在没有keep_alive的情况下打开时间点时的状态码 #87011 (问题: #87003)
  • DiskUsage API中处理空的点值 #87826 (问题: #87761)
  • 确保在协调器上重写解释查询 #87013 (问题: #64281)
Security
  • 使用户和角色名称约束与最大文档ID一致 #86728 (问题: #66020)
  • 安全插件关闭可释放领域 #87429 (问题: #86286)
Snapshot/Restore
  • DONE 应该表示快照状态中的完全处理 #86414
  • 区分缺失和无效的存储库 #85551 (问题: #85550)
  • StoreRecovery 调用 getRepositoryData 后分叉 #87264 (问题: #87237)
  • StoreRecovery 调用 getRepositoryData 后分叉 #87254 (问题: #87237)
  • 在非法的 RepositoryData 更新时抛出异常 #87654
  • 将 Azure SDK 升级到 12.16.0 #86135
Stats
  • 在MANAGEMENT池上运行TransportClusterInfoActions #87679
TSDB
  • TSDB: 修复时间序列以收集优先级 #85526
  • TSDB: 修复TimeSeriesIndexSearcher中tsidOrd的错误初始值 #85713 (问题: #85711)
Transform
  • 修复转换 _start 权限以使用配置中的存储头 #86802
  • [转换] 修复取消保留策略时的错误 #87711

弃用

edit
Authentication
  • 在LDAP或Active Directory (AD)领域中配置一个没有相应绑定密码的绑定DN已被弃用 #85326 (问题: #47191)

增强功能

edit
Aggregations
  • random_sampler聚合中提高最小和最大性能 #85118
Authentication
  • 支持在JWT Realm令牌中配置声明 #86533
  • 由于文档或字段级安全性的许可要求,用户角色被禁用时发出警告 #85393 (问题: #79207)
  • TokenService 解码JWT,将警告更改为调试 #86498
Authorization
  • 为 Synthetics 向 kibana_system 添加删除权限 #85844
  • 当指定索引时,授权 painless 执行作为索引操作 #85512 (问题: #86428)
  • 为 run-as 拒绝提供更好的错误信息 #85501 (问题: #72904)
  • 提高布尔响应的“Has Privilege”性能 #86685
  • 放宽角色 API 中角色名称的限制 #86604 (问题: #86480)
  • [Osquery] 扩展 kibana_system 角色以访问 osquery_manager… #86609
Autoscaling
  • 在期望节点中添加对CPU范围的支持 #86434
Cluster Coordination
  • 在应用器繁忙时阻止加入操作 #84919
  • 延迟计算主任务批次摘要 #86210
  • 在启动时记录 cluster.initial_master_nodes #86101
  • 减少加入验证的资源需求 #85380 (问题: #83204)
  • ClusterFormationFailureHelper 中报告待处理的加入操作 #85635
  • 加速映射差异处理 (2) #86375
Discovery-Plugins
  • 从discovery-azure中移除冗余的jackson依赖 #87898
Distributed
  • 跟踪所需节点的集群成员资格 #84165
Engine
  • 缓存不可变的translog lastModifiedTime #82721 (问题: #82720)
  • 根据分配的处理器增加force_merge线程池大小 #87082 (问题: #84943)
  • 当max_num_segments大于1时,更优化的强制合并 #85065
Geo
  • 支持在CartesianPoint中使用GeoJSON表示 #85442
  • 支持将地理标签位置作为运行时字段 #86154
  • 通过REST矢量瓦片API支持地理标签位置 #86458 (问题: #86044)
Health
  • 为层级偏好和分配过滤器冲突添加基本检查 #85071
  • 为健康API添加预检以确保健康状态可获取 #86404
  • 在健康API迁移层级用户操作中添加层级信息 #87486
  • 健康API添加指示文档链接 #86904 (问题: #86892)
  • 健康API的编辑工作 #87010
  • 如果没有可确定的操作,则返回默认的用户操作 #87079
ILM+SLM
  • 使 ILM 和 SLM 的 history_index_enabled 设置动态化 #86493
Indices APIs
  • 批量执行模板和管道集群状态操作 #86017
Infra/Core
  • 为弹性代理添加标签映射 #86298
  • 扩展 jar hell 以包含模块 #86622
  • 更快的 GET _cluster/settings API #86405 (问题: #82342)
  • 通过保存流刷新来加快字符串写入速度 #86114
  • Fleet: 为操作添加 start_timeminimum_execution_duration 属性 #86167
  • 强制扩展安全策略的属性 #87396
  • 将数组部分重构为可序列化的 BytesRefArray#85826
  • 加快 ip v4 解析器 #86253
  • 在更多地方使用 varhandles 进行原始类型转换 #85577 (问题: #78823)
Infra/Scripting
  • 脚本:在白名单中添加别名类的功能 #86899
Ingest
  • 迭代执行同步摄取处理器 #84250 (问题: #84274)
  • 跳过 ensureNoSelfReferences 检查在 IngestService #87337
License
  • 初始化活动领域而不记录消息 #86134 (问题: #81380)
Machine Learning
  • 一种文本分类聚合,其工作方式类似于ML分类 #80867
  • 为所有监督模型添加新的_infer端点并弃用部署infer API #86361
  • 添加新的question_answering NLP任务,用于从文档中提取问题的答案 #85958
  • _preview添加开始和结束参数,并从无界预览中排除冷/冻结层 #86989
  • 调整专用ML节点的自动JVM堆大小 #86399
  • 替换categorize_text聚合的实现 #85872
  • 将PyTorch升级到1.11版本 #2233, #2235,https://github.com/elastic/ml-cpp/pull/2238[#2238]
  • 在Windows上将zlib升级到1.2.12版本 #2253
  • 在Linux和Windows上将libxml2升级到2.9.14版本 #2287
  • 提高时间序列模型的稳定性和异常评分一致性,适用于许多桶为空的数据 #2267
  • 解决实际等于典型等于零异常的根本原因 #2270
  • 在检测到时间序列变化后立即更新时更好地处理异常值 #2280
Mapping
  • 映射器中的内部字段名称 #86301
  • 将 BYTE_BLOCK_SIZE - 2 替换为 indexWriter#MAX_TERM_LENGTH #85518
Network
  • 在启动时记录节点身份 #85773
Search
  • GeoBoundingBox 查询应在具有相同纬度或经度的边界框上工作 #85788 (问题: #77717)
  • 改进搜索 API URL 参数的错误消息 #86984 (问题: #79719)
Security
  • 为OAuth2令牌添加run-as支持 #86680
  • 放宽用户API的用户名限制 #86398 (问题: #86326)
  • 用户配置文件 - 为SuggestProfiles API添加提示支持 #85890
  • 用户配置文件 - 添加新的操作来源和内部用户 #86026
  • 用户配置文件 - 支持在HTTP断开连接时取消请求 #86332
  • 用户配置文件 - 为hasPrivileges检查添加缓存 #86543
Snapshot/Restore
  • 添加参数以排除快照中的索引在响应中 #86269 (问题: #82937)
Stats
  • 为“io_time_in_millis”添加文档 #84911
TLS
  • 为生成的证书和CSR设置serverAuth扩展密钥用法 #86311 (问题: #81067)
TSDB
  • 聚合执行上下文添加时间戳提供者 #85850
Transform
  • 首选用于转换的辅助认证头 #86757
  • 支持转换中的范围聚合 #86501

新功能

edit
Authorization
  • 为配置文件提供了权限API #85898
Geo
  • 新的 geo_grid 查询,用于与 geogrid 聚合一起使用 #86596 (问题: #85727)
Health
  • 添加对 impact_areas 到健康影响的支持 #85830 (问题: #85829)
  • 添加故障排除指南到分片分配操作 #87078
  • 添加潜在影响到剩余的健康指标 #86197
  • 健康API钻取 #85234 (问题: #84793)
  • 新服务以跟踪每个节点看到的主历史记录 #85941
  • 按索引优先级排序影响索引名称 #85347
Mapping
  • 为指标用例中的字段名称添加对点的支持 #86166 (问题: #63530)
  • 合成源 #85649
SQL
  • SQ: 允许在SQL查询中返回部分结果 #85897 (问题: #33148)
Search
TSDB

升级

edit
Infra/CLI
  • 将procrun可执行文件升级到1.3.1 #86710
Infra/Core
  • 将jackson升级到2.13.2 #86051
Ingest
Network
  • 升级到 Netty 4.1.76 #86252
Packaging
  • 将Iron Bank基础镜像更新至8.6 #86796
SQL
  • 更新依赖项 - JLine - 到 v 3.21.0 #83767 (问题: #83575)
Search
  • 更新到公共lucene 9.2.0版本 #87162
Snapshot/Restore
  • 升级GCS插件到1.118.1 #87800