# Manticore Search 2.7.0 GA 版本发布

我们很高兴宣布发布 [Manticore Search 2.7.0 GA](https://github.com/manticoresoftware/manticoresearch/releases/tag/2.7.0)。

适用于 Debian、Ubuntu、Red Hat/CentOS、Windows 和 OSX 的预构建软件包可以从 [这里](https://github.com/manticoresoftware/manticore/releases) 下载。如需 Docker 镜像，请查看官方 [仓库](https://hub.docker.com/r/manticoresearch/manticore/)。

### 内部改进

此版本对多个内部组件进行了重构，这些改进是为了现代化代码和流程。这些更改对用户是透明的，从旧版本或 Sphinx 2.x 升级不需要任何操作。

为减少 Spectre 和 Meltdown 补丁对性能的影响，尽可能减少了系统调用的数量。

本地索引的管理已重新设计。我们已从 RW 锁机制切换为索引独立于查询线程的模式。这意味着索引轮换不再被运行中的查询阻塞，或者正在进行的轮换不会导致新查询停滞。

现在配置重新加载将完全生效。例如，在之前的版本中，重新配置的索引需要重启守护进程。

到远程节点的连接现在完全独立。协议已改进，现在握手和数据（查询）通过单个数据包发送（之前是先发送握手）。这应该能改善延迟并减少节点之间的数据流量。协议更改与使用旧版本的远程节点兼容。

如果系统范围启用，主节点和节点之间可以使用 TCP Fast Open。

客户端轮询之前使用 epoll/kqueue，并在不可用时回退到 poll/select。poll/select 模式已被完全移除，这意味着 Manticore 不再支持没有 epoll 支持的内核（epoll 在 2012 年的 2.5.44 版本中引入）。在 Windows 平台上，我们已从 wsapoll 切换到 I/O 完成端口。


### 新功能和改进

* Percolate 查询过滤器可以包含表达式，并且可以与 JSON 和字符串属性一起使用。新选项 `docs_id` 可用于指定结果集使用的文档 ID。
* `SHOW STATUS` 现在包括守护进程版本以及 `mysql_version_string`。
* 分布式索引可以与 FEDERATED 一起工作。
* 为更好地与 ProxySQL 兼容，添加了虚拟的 SHOW NAMES COLLATE 和 SET wait_timeout。
* 在配置文件中，变量表示数据大小时可以使用后缀 `g`、`G`、`t`、`T`。

### 变更

* HA 加权策略中计算的主机权重现在以 **浮点数百分比**（0..99.99）表示，而不是 **uint16**（0..65535）。
* 从本版本开始，我们不再提供 Debian Wheezy 的构建版本。
* 本版本修复了若干错误，如需完整报告，请参阅 [发布说明](https://docs.manticoresearch.com/latest/html/releasenotes.html#version-2-7-0-ga-11-june-2018)。
