企业🤖AI智能体构建引擎,智能编排和调试,一键部署,支持私有化部署方案 广告
# 5.3.0 版本说明 原文链接 : [https://www.elastic.co/guide/en/elasticsearch/reference/5.3/release-notes-5.3.0.html](https://www.elastic.co/guide/en/elasticsearch/reference/5.3/release-notes-5.3.0.html) 译文链接 : [http://www.apache.wiki/pages/viewpage.action?pageId=9405176](http://www.apache.wiki/pages/viewpage.action?pageId=9405176) 贡献者 : [secscorpio](/display/~zhangliangliang),[ApacheCN](/display/~apachecn),[Apache中文网](/display/~apachechina) ### Breaking changes(重大变化) Query DSL * 修复了 **enabled_position_increments** 的名称 [#22895](https://github.com/elastic/elasticsearch/pull/22895) Search * 删除了搜索类型 **DFS_QUERY_AND_FETCH** [#22787](https://github.com/elastic/elasticsearch/pull/22787) ### Breaking Java changes(重大的 Java 变化) CRUD * 使 **index**(索引)和 **delete**(删除)操作作为单个的 **bulk** **item**(批量项)来执行(backport of #21964)[#22812](https://github.com/elastic/elasticsearch/pull/22812)(issue: [#21964](https://github.com/elastic/elasticsearch/issues/21964)) Internal * 用 **namedObject** 替换 **SearchExtRegistry**[#22492](https://github.com/elastic/elasticsearch/pull/22492) * 用 **namedObject** 替换 **Suggesters **[#22491](https://github.com/elastic/elasticsearch/pull/22491) Network * 为了利于简化 **dispatch** 方法,删除了 **HttpServer** 和 **HttpServerAdapter**  [#22636](https://github.com/elastic/elasticsearch/pull/22636) Plugins * **Guice rest handlers**  [#22575](https://github.com/elastic/elasticsearch/pull/22575) Search * 删除了搜索类型 **QUERY_AND_FETCH **[#22996](https://github.com/elastic/elasticsearch/pull/22996) ### Deprecations(弃用项) core * 弃用宽松的布尔类型  [#22716](https://github.com/elastic/elasticsearch/pull/22716) Geo * 弃用Geo的距离范围  [#22835](https://github.com/elastic/elasticsearch/pull/22835) Java API * 采用 XContentType参数添加BulkProcessor方法  [#23078](https://github.com/elastic/elasticsearch/pull/23078) Mapping * 弃用include_in_all 映射参数  [#22972](https://github.com/elastic/elasticsearch/pull/22972) Network * 弃用Netty 3  [#23459](https://github.com/elastic/elasticsearch/pull/23459)  [#23411](https://github.com/elastic/elasticsearch/pull/23411) Plugin库 Azure * 弃用使用Azure库自动创建容器  [#22857](https://github.com/elastic/elasticsearch/pull/22857) Plugin库 S3 * S3库:弃用指定区域  [#22848](https://github.com/elastic/elasticsearch/pull/22848) * S3库:弃用自动生成S3库的存储段  [#22843](https://github.com/elastic/elasticsearch/pull/22843)  * 通过环境变量、系统的props属性、移除系统文件来弃用信任凭证  [#22567](https://github.com/elastic/elasticsearch/pull/22567) REST * 弃用用于bulk/msearch的ldjson支持和文档ndjson   [#23051](https://github.com/elastic/elasticsearch/pull/23051) * 对所有的rest请求需要一个任意有效的内容类型  [#22691](https://github.com/elastic/elasticsearch/pull/22691)  Scripting * 将存储脚本的命名空间更改为仅使用id  [#22335](https://github.com/elastic/elasticsearch/pull/22335) ### New features(新特性)  聚合 * 使用过滤聚合的邻接矩阵的初始版本  [#22239](https://github.com/elastic/elasticsearch/pull/22239) CURD * 允许使用自定义路由分区索引  [#22274](https://github.com/elastic/elasticsearch/pull/22274) 高亮显示 * 整合未定义的高亮显示项  [#21621](https://github.com/elastic/elasticsearch/pull/21621)  搜索 * 添加聚合跨集群搜索功能  [#22502](https://github.com/elastic/elasticsearch/pull/22502) * 为搜索请求添加分组查询  [#22337](https://github.com/elastic/elasticsearch/pull/22337) 设置 * 添加elasticsearch秘钥库的基础结构  [#22335](https://github.com/elastic/elasticsearch/pull/22335) ### Enhancements(改进项) 分配 * 当诠释一个未分配的主分片时,老的副本信息也包含在内  [#22826](https://github.com/elastic/elasticsearch/pull/22826) 分析 * 支持对API位置长度的分析  [#22574](https://github.com/elastic/elasticsearch/pull/22574) CURD * 索引和删除操作作为单个主体项执行   [#21964](https://github.com/elastic/elasticsearch/pull/21964) 断路器 * 将已用的内存总量添加到CircuitBreakingException message中  [#22693](https://github.com/elastic/elasticsearch/pull/22693) 集群 * 连接新的并发节点  [#22984](https://github.com/elastic/elasticsearch/pull/22984) 内核 * 简化写入失败的处理流程  [#22778](https://github.com/elastic/elasticsearch/pull/22778) * 简化ElasticsearchException为XContent  [#22611](https://github.com/elastic/elasticsearch/pull/22611) * 从ClusterService和TransportService中删除setLocalNode  [#22608](https://github.com/elastic/elasticsearch/pull/22608) 引擎 * 用AlreadyClosedExcpetion替换EngineClosedException  [#22631](https://github.com/elastic/elasticsearch/pull/22631) 索引APIs * 索引:将分片ID添加到索引操作监听器中  [#22606](https://github.com/elastic/elasticsearch/pull/22606) * 当不能自动创建索引时给出友好的错误提示  [#22488](https://github.com/elastic/elasticsearch/pull/22488) Ingest * 惰性加载geoip数据库  [#23337](https://github.com/elastic/elasticsearch/pull/23337) Internal * 提高RemoteClusterConnection中的连接关闭  [#22804](https://github.com/elastic/elasticsearch/pull/22804) * 移除更多的ParseFieldMatcher的应用  [#22437](https://github.com/elastic/elasticsearch/pull/22437) * 采用ToXContentObject接口  [#22387](https://github.com/elastic/elasticsearch/pull/22387) Java API * prevent NPE when trying to uncompress a null BytesReference [#22386](https://github.com/elastic/elasticsearch/pull/22386) Java高级REST客户端 * 将解析从xContent添加到MainResponse   [#22934](https://github.com/elastic/elasticsearch/pull/22934) * 解析elasticsearch异常的本因  [#22924](https://github.com/elastic/elasticsearch/pull/22924) * [在BytesRestResponse的错误上添加解析方法  ](https://github.com/elastic/elasticsearch/pull/22924)[#22873](https://github.com/elastic/elasticsearch/pull/22873) * 为ElasticsearchException.generateThrowableXContent() 添加解析方法   [#22783](https://github.com/elastic/elasticsearch/pull/22783) * 为删除回显添加fromxcontent方法  [#22712](https://github.com/elastic/elasticsearch/pull/22712) * 为UpdateResponse添加解析方法  [#22586](https://github.com/elastic/elasticsearch/pull/22586) * 从xContent上添加对InternalSearchHit和InternalSearchHits的解析  [#22429](https://github.com/elastic/elasticsearch/pull/22429) * 在索引响应上添加fromxcontent方法  [#22229](https://github.com/elastic/elasticsearch/pull/22229) Java REST客户端 * 从yaml测试客户端到低权限rest客户端移除忽略参数  [#22637](https://github.com/elastic/elasticsearch/pull/22637) * 支持RestClient的抢占认证  [#21336](https://github.com/elastic/elasticsearch/pull/21336) 记录 * 暴露日志绝对路径  [#22625](https://github.com/elastic/elasticsearch/pull/22625) 映射 * 改善ipv6在传统ip字段上的错误消息提示  [#23136](https://github.com/elastic/elasticsearch/pull/23136) 网络 * 维持流水线处理队列最小化  [#23335](https://github.com/elastic/elasticsearch/pull/23335) 打包 * 采用Java版本检测   [#23194](https://github.com/elastic/elasticsearch/pull/23194) 插件发现EC2 * 从aws实例标签中读取ec2发现地址  [#22819](https://github.com/elastic/elasticsearch/pull/22819) Plugin Lang Painless * 引用painless API的参考链接  [#22775](https://github.com/elastic/elasticsearch/pull/22775) * 添加Base64至字符串  [#22665](https://github.com/elastic/elasticsearch/pull/22665) 插件存储库S3 * S3存储库:增加命名配置  [#22762](https://github.com/elastic/elasticsearch/pull/22762) 插件 * 添加在搜索插件中定义搜索响应侦听器的功能  [#22682](https://github.com/elastic/elasticsearch/pull/22682) Query DSL * QueryString and SimpleQueryString具备图表支持  [#22541](https://github.com/elastic/elasticsearch/pull/22541) * 在匹配查询中增加图表支持  [#22503](https://github.com/elastic/elasticsearch/pull/22503) * RangeQuery WITHIN 如今能进行正常化查询  [#22431](https://github.com/elastic/elasticsearch/pull/22431) Reindex API * 提高doExecute的可用性,以便能直接使用  [#22614](https://github.com/elastic/elasticsearch/pull/22614) * 当reindex从远端获得bad json时,改进错误消息  [#22536](https://github.com/elastic/elasticsearch/pull/22536) 脚本 * 将多值日期显示给脚本并记录painless的日期功能  [#22875](https://github.com/elastic/elasticsearch/pull/22875) 发现 * 添加设置以禁用节点上的远程群集连接  [#23005](https://github.com/elastic/elasticsearch/pull/23005) * 第一步分离个别搜索阶段  [#22802](https://github.com/elastic/elasticsearch/pull/22802) * 从xContent添加解析到SearchProfileShardResults和嵌套类中  [#22649](https://github.com/elastic/elasticsearch/pull/22649) * ProfileResult和CollectorResult能够打印机器可读时间信息  [#22638](https://github.com/elastic/elasticsearch/pull/22638) 设置 * 改进设置折旧信息  [#23156](https://github.com/elastic/elasticsearch/pull/23156) * 在启动时添加安全设置验证  [#22894](https://github.com/elastic/elasticsearch/pull/22894) * 允许逗号分隔的数组设置每个条目之后有一个空格  [#22591](https://github.com/elastic/elasticsearch/pull/22591) * 允许附加设置为动态/可更新  [#22526](https://github.com/elastic/elasticsearch/pull/22526) * 允许附加设置表示实际的设置  [#22523](https://github.com/elastic/elasticsearch/pull/22523) * s3存储库敏感设置使用安全设置方式  [#22479](https://github.com/elastic/elasticsearch/pull/22479) 快照/还原 * 重复的快照名称抛出InvalidSnapshotNameException异常  [#22921](https://github.com/elastic/elasticsearch/pull/22921) * 使用通常的集群状态批处理机制进行快照状态更新  [#22528](https://github.com/elastic/elasticsearch/pull/22528) 统计 * 将geo_point添加到FieldStats  [#21947](https://github.com/elastic/elasticsearch/pull/21947) ### Bug fixes(Bug 修复) CRUD * 将后端执行操作修正为单项批量执行  [#23083](https://github.com/elastic/elasticsearch/pull/23083) 缓存 * 如果查询超时,则缓存查询结果无效   [#22807](https://github.com/elastic/elasticsearch/pull/22807) 集群 * 不要在群集状态上设置本地节点用于节点连接验证  [#23311](https://github.com/elastic/elasticsearch/pull/23311) * 允许集群状态应用程序创建监测器并等待更好的状态   [#23132](https://github.com/elastic/elasticsearch/pull/23132) * 群集分配永远不会返回空的响应体  [#23054](https://github.com/elastic/elasticsearch/pull/23054) 特例 * 停止返回“es”。 内部异常标头作为HTTP响应头  [#22703](https://github.com/elastic/elasticsearch/pull/22703) Ingest * 改善丢失的Ingest处理器错误  [#23379](https://github.com/elastic/elasticsearch/pull/23379) * 将数据处理器固定到每个新管道执行的新的默认年份  [#22601](https://github.com/elastic/elasticsearch/pull/22601) Internal * 恢复ThreadContext以使由于块阻塞而延迟的操作  [#23349](https://github.com/elastic/elasticsearch/pull/23349) * 修复InternalEngine中的文档失败异常的处理  [#22910](https://github.com/elastic/elasticsearch/pull/22910) Java REST客户端 * RestClient异步执行不应该抛出异常  [#23307](https://github.com/elastic/elasticsearch/pull/23307) 映射 * 将多个磁盘中的include_in_all切换到警告  [#23656](https://github.com/elastic/elasticsearch/pull/23656) * 修复MapperService StackOverflowError  [#23605](https://github.com/elastic/elasticsearch/pull/23605) * 当查询字符串中为include_defaults = true时,范围类型导致GetFieldMappingsIndexRequest由于NullPointerException inRangeFieldMapper.doXContentBody而失败   [#22925](https://github.com/elastic/elasticsearch/pull/22925) * 禁止引入非法对象映射(double ..)  [#22891](https://github.com/elastic/elasticsearch/pull/22891) 网络 * 遵守流式响应的承诺  [#23317](https://github.com/elastic/elasticsearch/pull/23317) * 确保调用释放监听器  [#23310](https://github.com/elastic/elasticsearch/pull/23310) Packaging * 删除插件时,回到非原子运动  [#23548](https://github.com/elastic/elasticsearch/pull/23548)  Parent/Child * 在孤立的子文件的情况下添加空检查  [#22772](https://github.com/elastic/elasticsearch/pull/22772) Plugin Ingest Attachment * 删除对Visio和potm文件的支持  [#23214](https://github.com/elastic/elasticsearch/pull/23214) * 添加缺少的mime4j库  [#22799](https://github.com/elastic/elasticsearch/pull/22799) Plugin Lang Painless * 修复Bad Casts异常  [#23282](https://github.com/elastic/elasticsearch/pull/23282) * 不允许在无关紧要处定义无效内容  [#22969](https://github.com/elastic/elasticsearch/pull/22969) * 修复def调用的合法方法参考  [#22918](https://github.com/elastic/elasticsearch/pull/22918) 插件 * 在remove命令中添加检查null pluginName  [#22930](https://github.com/elastic/elasticsearch/pull/22930) Query DSL * 修复max_determinized_states的解析  [#22749](https://github.com/elastic/elasticsearch/pull/22749) REST * [API]根据文档更改wait_for_completion默认值  [#23672](https://github.com/elastic/elasticsearch/pull/23672) * HTTP传输会隐藏ThreadContext而不是RestController  [#23456](https://github.com/elastic/elasticsearch/pull/23456) * 确保我们尝试自动检测支持纯文本的处理程序的内容类型  [#23452](https://github.com/elastic/elasticsearch/pull/23452) * 在警告标题中修正日期格式  [#23418](https://github.com/elastic/elasticsearch/pull/23418) * 正确警告标题符合要求   [#23275](https://github.com/elastic/elasticsearch/pull/23275) * 使用纯文本正文修复搜索滚动请求  [#23183](https://github.com/elastic/elasticsearch/pull/23183) * 处理不良的HTTP请求  [#23153](https://github.com/elastic/elasticsearch/pull/23153) * 正确编码位置标题  [#23133](https://github.com/elastic/elasticsearch/pull/23133) Reindex API * Reindex:当不能清除旧滚动条时不要登录  [#22942](https://github.com/elastic/elasticsearch/pull/22942) * 修复<2.0版本的远程索引  [#22931](https://github.com/elastic/elasticsearch/pull/22931) Scripting * 删除不必要的Groovy弃用日志记录  [#23410](https://github.com/elastic/elasticsearch/pull/23410) * 脚本:将ctx._now的值修改为当前时间(以毫秒为单位)[#23175](https://github.com/elastic/elasticsearch/pull/23175) Search * 在多搜索中honor最大并发搜索  [#23538](https://github.com/elastic/elasticsearch/pull/23538) * 避免多重搜索中的堆栈溢出  [#23527](https://github.com/elastic/elasticsearch/pull/23527) * 通过异步请求替换ExpandCollapseSearchResponseListener中的阻塞调用  [#23053](https://github.com/elastic/elasticsearch/pull/23053) * 确保InnerHitBuilder的固定序列化顺序   [#22820](https://github.com/elastic/elasticsearch/pull/22820) Settings * 修复合并调度程序配置设置  [#23391](https://github.com/elastic/elasticsearch/pull/23391) * 设置:修复keystore cli提示为yes / no来处理控制台返回null   [#23320](https://github.com/elastic/elasticsearch/pull/23320) * 将search.highlight.term_vector_multi_value作为节点级别设置  [#22999](https://github.com/elastic/elasticsearch/pull/22999) * 没有设置名称传递到elasticsearch-keystore的NPE  [#22609](https://github.com/elastic/elasticsearch/pull/22609) Similarities * 修复“默认”相似度时的相似度升级  [#23163](https://github.com/elastic/elasticsearch/pull/23163) 统计 * 计算总体FS统计数据时避免溢出  [#23641](https://github.com/elastic/elasticsearch/pull/23641) * 添加路径总数时处理长时间溢出  [#23293](https://github.com/elastic/elasticsearch/pull/23293)  * 修复对照组模式  [#23219](https://github.com/elastic/elasticsearch/pull/23219) * 修复总磁盘字节返回负值   [#23093](https://github.com/elastic/elasticsearch/pull/23093) 任务管理器 * 修复没有子进程的悬挂取消任务  [#22796](https://github.com/elastic/elasticsearch/pull/22796) * 修复破坏TaskInfo.toString()  [#22698](https://github.com/elastic/elasticsearch/pull/22698) ### Regressions(回退) Core * 源过滤:如果之前的版本包含模式匹配,则仅接受数组项  [#22593](https://github.com/elastic/elasticsearch/pull/22593) ### Upgrades(升级) Internal * 升级到Lucene 6.4.1  [#22978](https://github.com/elastic/elasticsearch/pull/22978)