我们很高兴地宣布 Manticore Search 2.5.1 的发布。
可以从 这里 下载适用于 Debian、Ubuntu、Red Hat/CentOS、Windows 和 OSX 的预构建包。
HTTP API JSON 查询
HTTP API 新增了一个端点,允许以 JSON 格式编写查询。虽然它还没有 SphinxQL 的所有功能,但它允许执行 搜索 和数据操作( 插入 / 更新 / 替换 / 删除 )。 由于数据操作尚不支持 MVA 和 JSON 属性,当前存在一些限制。
请注意,JSON 查询处于早期阶段,未来可能会发生变化。我们欢迎任何人试用并向我们反馈。我们不仅希望发现潜在的错误,还希望获取关于这种连接 Manticore Search 新方式的任何建议。
新特性和改进
SHOW THREADS 命令现在将列出正在进行的操作,如索引优化、轮换、刷新。
新增命令 RELOAD INDEXES ,其效果与发送 HUP 信号给 searchd 守护进程相同。
新增命令 FLUSH LOGS ,其效果与发送 USR1 信号给 searchd 守护进程相同。
GROUP N BY 现在在针对 MVA 属性时可以正确工作。
从 sql 源构建的多值属性现在可以使用来自主 sql_query 的范围步骤和范围值进行 范围查询 。
sql_attr_multi = uint mva from ranged-main-query; select id, mva from mva where id between $start and $end
为 Debian 9 和 OSX 10.13 添加了软件包。改善了对 FreeBSD、OSX 和 Alpine 平台的支持。
此版本为索引引入了引用计数。在高负载下,轮换可能会因已有的运行查询而延迟并延迟其后来的进入查询。通过新更改,现有查询由旧版本的索引服务,而进入查询由新版本的索引服务,因此轮换和查询不再停滞。这意味着旧版本将保持在内存中,直到针对它的查询执行完成。
另一个更改与黑洞代理有关。虽然主节点不等待发送到黑洞节点的查询的响应,但它会尝试连接到黑洞节点并等待回复。这意味着在黑洞节点故障的情况下,主节点尝试重新连接(根据重试计数设置)。因此,主节点有可能被黑洞节点阻塞。现在黑洞节点由一个与运行主查询的线程分开的线程处理,以不再影响它。
有关更改的完整报告,请查阅 发行说明 。
下一个版本的早期说明
我们的下一个版本将在 12 月的下半月发布。该版本将不再支持 32 位文档 ID。32 位 ID 来自 Sphinx 的早期,当时硬件的限制更大,现在我们觉得没有理由再支持它们。