5.3.0 版本说明

Breaking changes(重大变化)

Query DSL

  • 修复了 enabled_position_increments 的名称 #22895

Search

  • 删除了搜索类型 DFS_QUERY_AND_FETCH #22787

Breaking Java changes(重大的 Java 变化)

CRUD

  • 使 index(索引)和 delete(删除)操作作为单个的 bulk item(批量项)来执行(backport of #21964)#22812(issue: #21964

Internal

  • namedObject 替换 SearchExtRegistry#22492
  • 用 namedObject 替换 Suggesters #22491

Network

  • 为了利于简化 dispatch 方法,删除了 HttpServerHttpServerAdapter  #22636

Plugins

  • Guice rest handlers  #22575

Search

  • 删除了搜索类型 QUERY_AND_FETCH #22996

Deprecations(弃用项)

core

  • 弃用宽松的布尔类型  #22716

Geo

  • 弃用Geo的距离范围  #22835

Java API

  • 采用 XContentType参数添加BulkProcessor方法  #23078

Mapping

  • 弃用include_in_all 映射参数  #22972

Network

Plugin库 Azure

  • 弃用使用Azure库自动创建容器  #22857

Plugin库 S3

  • S3库:弃用指定区域  #22848
  • S3库:弃用自动生成S3库的存储段  #22843 
  • 通过环境变量、系统的props属性、移除系统文件来弃用信任凭证  #22567

REST

  • 弃用用于bulk/msearch的ldjson支持和文档ndjson   #23051
  • 对所有的rest请求需要一个任意有效的内容类型  #22691 

Scripting

  • 将存储脚本的命名空间更改为仅使用id  #22335

New features(新特性)

聚合

  • 使用过滤聚合的邻接矩阵的初始版本  #22239

CURD

  • 允许使用自定义路由分区索引  #22274

高亮显示

  • 整合未定义的高亮显示项  #21621 

搜索

  • 添加聚合跨集群搜索功能  #22502
  • 为搜索请求添加分组查询  #22337

设置

  • 添加elasticsearch秘钥库的基础结构  #22335

Enhancements(改进项)

分配

  • 当诠释一个未分配的主分片时,老的副本信息也包含在内  #22826

分析

  • 支持对API位置长度的分析  #22574

CURD

  • 索引和删除操作作为单个主体项执行   #21964

断路器

  • 将已用的内存总量添加到CircuitBreakingException message中  #22693

集群

  • 连接新的并发节点  #22984

内核

  • 简化写入失败的处理流程  #22778
  • 简化ElasticsearchException为XContent  #22611
  • 从ClusterService和TransportService中删除setLocalNode  #22608

引擎

  • 用AlreadyClosedExcpetion替换EngineClosedException  #22631

索引APIs

  • 索引:将分片ID添加到索引操作监听器中  #22606
  • 当不能自动创建索引时给出友好的错误提示  #22488

Ingest

  • 惰性加载geoip数据库  #23337

Internal

  • 提高RemoteClusterConnection中的连接关闭  #22804
  • 移除更多的ParseFieldMatcher的应用  #22437
  • 采用ToXContentObject接口  #22387

Java API

  • prevent NPE when trying to uncompress a null BytesReference #22386

Java高级REST客户端

Java REST客户端

  • 从yaml测试客户端到低权限rest客户端移除忽略参数  #22637

  • 支持RestClient的抢占认证  #21336

记录

  • 暴露日志绝对路径  #22625

映射

  • 改善ipv6在传统ip字段上的错误消息提示  #23136

网络

  • 维持流水线处理队列最小化  #23335

打包

  • 采用Java版本检测   #23194

插件发现EC2

  • 从aws实例标签中读取ec2发现地址  #22819

Plugin Lang Painless

  • 引用painless API的参考链接  #22775
  • 添加Base64至字符串  #22665

插件存储库S3

  • S3存储库:增加命名配置  #22762

插件

  • 添加在搜索插件中定义搜索响应侦听器的功能  #22682

Query DSL

  • QueryString and SimpleQueryString具备图表支持  #22541
  • 在匹配查询中增加图表支持  #22503
  • RangeQuery WITHIN 如今能进行正常化查询  #22431

Reindex API

  • 提高doExecute的可用性,以便能直接使用  #22614
  • 当reindex从远端获得bad json时,改进错误消息  #22536

脚本

  • 将多值日期显示给脚本并记录painless的日期功能  #22875

发现

  • 添加设置以禁用节点上的远程群集连接  #23005
  • 第一步分离个别搜索阶段  #22802
  • 从xContent添加解析到SearchProfileShardResults和嵌套类中  #22649
  • ProfileResult和CollectorResult能够打印机器可读时间信息  #22638

设置

  • 改进设置折旧信息  #23156
  • 在启动时添加安全设置验证  #22894
  • 允许逗号分隔的数组设置每个条目之后有一个空格  #22591
  • 允许附加设置为动态/可更新  #22526
  • 允许附加设置表示实际的设置  #22523
  • s3存储库敏感设置使用安全设置方式  #22479

快照/还原

  • 重复的快照名称抛出InvalidSnapshotNameException异常  #22921
  • 使用通常的集群状态批处理机制进行快照状态更新  #22528

统计

  • 将geo_point添加到FieldStats  #21947

Bug fixes(Bug 修复)

CRUD

  • 将后端执行操作修正为单项批量执行  #23083

缓存

  • 如果查询超时,则缓存查询结果无效   #22807

集群

  • 不要在群集状态上设置本地节点用于节点连接验证  #23311
  • 允许集群状态应用程序创建监测器并等待更好的状态   #23132
  • 群集分配永远不会返回空的响应体  #23054

特例

  • 停止返回“es”。 内部异常标头作为HTTP响应头  #22703

Ingest

  • 改善丢失的Ingest处理器错误  #23379
  • 将数据处理器固定到每个新管道执行的新的默认年份  #22601

Internal

  • 恢复ThreadContext以使由于块阻塞而延迟的操作  #23349
  • 修复InternalEngine中的文档失败异常的处理  #22910

Java REST客户端

  • RestClient异步执行不应该抛出异常  #23307

映射

  • 将多个磁盘中的include_in_all切换到警告  #23656
  • 修复MapperService StackOverflowError  #23605
  • 当查询字符串中为include_defaults = true时,范围类型导致GetFieldMappingsIndexRequest由于NullPointerException inRangeFieldMapper.doXContentBody而失败   #22925
  • 禁止引入非法对象映射(double ..)  #22891

网络

  • 遵守流式响应的承诺  #23317
  • 确保调用释放监听器  #23310

Packaging

  • 删除插件时,回到非原子运动  #23548 

Parent/Child

  • 在孤立的子文件的情况下添加空检查  #22772

Plugin Ingest Attachment

  • 删除对Visio和potm文件的支持  #23214
  • 添加缺少的mime4j库  #22799

Plugin Lang Painless

  • 修复Bad Casts异常  #23282
  • 不允许在无关紧要处定义无效内容  #22969
  • 修复def调用的合法方法参考  #22918

插件

  • 在remove命令中添加检查null pluginName  #22930

Query DSL

  • 修复max_determinized_states的解析  #22749

REST

  • [API]根据文档更改wait_for_completion默认值  #23672
  • HTTP传输会隐藏ThreadContext而不是RestController  #23456
  • 确保我们尝试自动检测支持纯文本的处理程序的内容类型  #23452
  • 在警告标题中修正日期格式  #23418
  • 正确警告标题符合要求   #23275
  • 使用纯文本正文修复搜索滚动请求  #23183
  • 处理不良的HTTP请求  #23153
  • 正确编码位置标题  #23133

Reindex API

  • Reindex:当不能清除旧滚动条时不要登录  #22942
  • 修复<2.0版本的远程索引  #22931

Scripting

  • 删除不必要的Groovy弃用日志记录  #23410
  • 脚本:将ctx._now的值修改为当前时间(以毫秒为单位)#23175

Search

  • 在多搜索中honor最大并发搜索  #23538
  • 避免多重搜索中的堆栈溢出  #23527
  • 通过异步请求替换ExpandCollapseSearchResponseListener中的阻塞调用  #23053
  • 确保InnerHitBuilder的固定序列化顺序   #22820

Settings

  • 修复合并调度程序配置设置  #23391
  • 设置:修复keystore cli提示为yes / no来处理控制台返回null   #23320
  • 将search.highlight.term_vector_multi_value作为节点级别设置  #22999
  • 没有设置名称传递到elasticsearch-keystore的NPE  #22609

Similarities

  • 修复“默认”相似度时的相似度升级  #23163

统计

  • 计算总体FS统计数据时避免溢出  #23641
  • 添加路径总数时处理长时间溢出  #23293 
  • 修复对照组模式  #23219
  • 修复总磁盘字节返回负值   #23093

任务管理器

  • 修复没有子进程的悬挂取消任务  #22796
  • 修复破坏TaskInfo.toString()  #22698

Regressions(回退)

Core

  • 源过滤:如果之前的版本包含模式匹配,则仅接受数组项  #22593

Upgrades(升级)

Internal

  • 升级到Lucene 6.4.1  #22978